Message ID | 20231120213301.24349-11-philmd@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | memory: Propagate Error* when possible | expand |
On Mon, Nov 20, 2023 at 10:32:44PM +0100, Philippe Mathieu-Daudé wrote: > Following the example documented since commit e3fe3988d7 ("error: > Document Error API usage rules"), have cpu_exec_realizefn() same > return a boolean indicating whether an error is set or not. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Peter Xu <peterx@redhat.com>
On 11/21/23 07:32, Philippe Mathieu-Daudé wrote: > Following the example documented since commit e3fe3988d7 ("error: > Document Error API usage rules"), have cpu_exec_realizefn() > return a boolean indicating whether an error is set or not. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > include/exec/memory.h | 4 +++- > system/memory.c | 6 ++++-- > 2 files changed, 7 insertions(+), 3 deletions(-) > With Peter Xu's comments addressed, to s/cpu_exec_realizefn()/memory_region_init_rom_device() in the commit messages. Reviewed-by: Gavin Shan <gshan@redhat.com>
diff --git a/include/exec/memory.h b/include/exec/memory.h index e2cf3e58de..92b0c0aa46 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -1646,8 +1646,10 @@ bool memory_region_init_rom(MemoryRegion *mr, * must be unique within any device * @size: size of the region. * @errp: pointer to Error*, to store an error if it happens. + * + * Return: true on success, else false setting @errp with error. */ -void memory_region_init_rom_device(MemoryRegion *mr, +bool memory_region_init_rom_device(MemoryRegion *mr, Object *owner, const MemoryRegionOps *ops, void *opaque, diff --git a/system/memory.c b/system/memory.c index 6d1d315d0e..1b10e177f5 100644 --- a/system/memory.c +++ b/system/memory.c @@ -3645,7 +3645,7 @@ bool memory_region_init_rom(MemoryRegion *mr, return true; } -void memory_region_init_rom_device(MemoryRegion *mr, +bool memory_region_init_rom_device(MemoryRegion *mr, Object *owner, const MemoryRegionOps *ops, void *opaque, @@ -3657,7 +3657,7 @@ void memory_region_init_rom_device(MemoryRegion *mr, if (!memory_region_init_rom_device_nomigrate(mr, owner, ops, opaque, name, size, errp)) { - return; + return false; } /* This will assert if owner is neither NULL nor a DeviceState. * We only want the owner here for the purposes of defining a @@ -3667,6 +3667,8 @@ void memory_region_init_rom_device(MemoryRegion *mr, */ owner_dev = DEVICE(owner); vmstate_register_ram(mr, owner_dev); + + return true; } /*
Following the example documented since commit e3fe3988d7 ("error: Document Error API usage rules"), have cpu_exec_realizefn() return a boolean indicating whether an error is set or not. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- include/exec/memory.h | 4 +++- system/memory.c | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-)