Message ID | 20231120213301.24349-5-philmd@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | memory: Propagate Error* when possible | expand |
On Mon, Nov 20, 2023 at 10:32:38PM +0100, Philippe Mathieu-Daudé wrote: > Mechanical change using the following coccinelle script: > > @@ > expression mr, owner, arg3, arg4, errp; > @@ > - memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp); > if ( > - errp > + !memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp) > ) { > ... > return; > } > > and removing the local Error variable. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Peter Xu <peterx@redhat.com>
On 11/20/23 15:32, Philippe Mathieu-Daudé wrote: > Mechanical change using the following coccinelle script: > > @@ > expression mr, owner, arg3, arg4, errp; > @@ > - memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp); > if ( > - errp > + !memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp) This coccinelle script doesn't quite match... > @@ -3628,11 +3628,8 @@ void memory_region_init_rom(MemoryRegion *mr, > Error **errp) > { > DeviceState *owner_dev; > - Error *err = NULL; > > - memory_region_init_rom_nomigrate(mr, owner, name, size, &err); ... this? That said, the actual code change is good. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On 11/21/23 12:50, Richard Henderson wrote: > On 11/20/23 15:32, Philippe Mathieu-Daudé wrote: >> Mechanical change using the following coccinelle script: >> >> @@ >> expression mr, owner, arg3, arg4, errp; >> @@ >> - memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp); >> if ( >> - errp >> + !memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp) > > This coccinelle script doesn't quite match... > >> @@ -3628,11 +3628,8 @@ void memory_region_init_rom(MemoryRegion *mr, >> Error **errp) >> { >> DeviceState *owner_dev; >> - Error *err = NULL; >> - memory_region_init_rom_nomigrate(mr, owner, name, size, &err); > > ... this? I'm sorry, it does. "expression errp" can match "err". It's the manual local variable removal that threw me off. r~
On 11/21/23 07:32, Philippe Mathieu-Daudé wrote: > Mechanical change using the following coccinelle script: > > @@ > expression mr, owner, arg3, arg4, errp; > @@ > - memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp); > if ( > - errp > + !memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp) > ) { > ... > return; > } > > and removing the local Error variable. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > system/memory.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > Reviewed-by: Gavin Shan <gshan@redhat.com>
diff --git a/system/memory.c b/system/memory.c index bfe0b62d59..2fe4c3861b 100644 --- a/system/memory.c +++ b/system/memory.c @@ -3628,11 +3628,8 @@ void memory_region_init_rom(MemoryRegion *mr, Error **errp) { DeviceState *owner_dev; - Error *err = NULL; - memory_region_init_rom_nomigrate(mr, owner, name, size, &err); - if (err) { - error_propagate(errp, err); + if (!memory_region_init_rom_nomigrate(mr, owner, name, size, errp)) { return; } /* This will assert if owner is neither NULL nor a DeviceState.
Mechanical change using the following coccinelle script: @@ expression mr, owner, arg3, arg4, errp; @@ - memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp); if ( - errp + !memory_region_init_rom_nomigrate(mr, owner, arg3, arg4, &errp) ) { ... return; } and removing the local Error variable. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- system/memory.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-)