[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v1 1/1] exec: Fix watchpoint implementation
From: |
Meador Inge |
Subject: |
Re: [Qemu-devel] [PATCH v1 1/1] exec: Fix watchpoint implementation |
Date: |
Fri, 17 Feb 2012 10:36:41 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20120131 Thunderbird/10.0 |
On 02/17/2012 10:28 AM, Jan Kiszka wrote:
> On 2012-02-17 17:23, Meador Inge wrote:
>> Fix a bug introduced by commit 1ec9b909ff207a44d5ef2609cb4a2e3d449d485f
>> where 'watch_mem_write' was modified to fall-through to 'abort' on
>> every input.
>>
>> Signed-off-by: Meador Inge <address@hidden>
>> ---
>> exec.c | 6 +++---
>> 1 files changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/exec.c b/exec.c
>> index b81677a..fe8b2d1 100644
>> --- a/exec.c
>> +++ b/exec.c
>> @@ -3289,9 +3289,9 @@ static void watch_mem_write(void *opaque,
>> target_phys_addr_t addr,
>> {
>> check_watchpoint(addr & ~TARGET_PAGE_MASK, ~(size - 1), BP_MEM_WRITE);
>> switch (size) {
>> - case 1: stb_phys(addr, val);
>> - case 2: stw_phys(addr, val);
>> - case 4: stl_phys(addr, val);
>> + case 1: return stb_phys(addr, val);
>> + case 2: return stw_phys(addr, val);
>> + case 4: return stl_phys(addr, val);
>> default: abort();
>> }
>> }
>
> You likely wanted to introduce breaks here, no...?
I see both styles in 'exec.c'. An example similar to the above is:
static void subpage_ram_write(void *opaque, target_phys_addr_t addr,
uint64_t value, unsigned size)
{
ram_addr_t raddr = addr;
void *ptr = qemu_get_ram_ptr(raddr);
switch (size) {
case 1: return stb_p(ptr, value);
case 2: return stw_p(ptr, value);
case 4: return stl_p(ptr, value);
default: abort();
}
}
I will switch to the 'break' style if that is more consistent with the general
coding convention.
--
Meador Inge
CodeSourcery / Mentor Embedded
http://www.mentor.com/embedded-software