On 2012-02-17 17:36, Meador Inge wrote: > 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 <mead...@codesourcery.com> >>> --- >>> 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:
There is a lot of legacy code in QEMU. Better look at CODING_STYLE when in doubt. > > 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. That's also nonsense: neither st*_p nor st*_phys return anything else than void. Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux