|
From: | Philippe Mathieu-Daudé |
Subject: | Re: [PATCH-for-9.0 03/25] memory: Have memory_region_init_rom_nomigrate() handler return a boolean |
Date: | Fri, 5 Jan 2024 15:46:43 +0100 |
User-agent: | Mozilla Thunderbird |
On 21/11/23 13:10, Manos Pitsidianakis wrote:
On Mon, 20 Nov 2023 23:32, Philippe Mathieu-Daudé <philmd@linaro.org> 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 | 8 ++++++-- 2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/system/memory.c b/system/memory.c index 337b12a674..bfe0b62d59 100644 --- a/system/memory.c +++ b/system/memory.c @@ -1729,14 +1729,18 @@ void memory_region_init_alias(MemoryRegion *mr, mr->alias_offset = offset; } -void memory_region_init_rom_nomigrate(MemoryRegion *mr, +bool memory_region_init_rom_nomigrate(MemoryRegion *mr, Object *owner, const char *name, uint64_t size, Error **errp) {- memory_region_init_ram_flags_nomigrate(mr, owner, name, size, 0, errp);+ bool rv; ++ rv = memory_region_init_ram_flags_nomigrate(mr, owner, name, size, 0, errp);mr->readonly = true; +By the way, do we want to set mr->readonly on failure? Should there be modifications if an error is propagated upwards?
Good point, I'm squashing: -- >8 -- diff --git a/system/memory.c b/system/memory.c index a748de3694..72c6441e20 100644 --- a/system/memory.c +++ b/system/memory.c@@ -1707,12 +1707,13 @@ bool memory_region_init_rom_nomigrate(MemoryRegion *mr,
uint64_t size, Error **errp) { - bool rv; -- rv = memory_region_init_ram_flags_nomigrate(mr, owner, name, size, 0, errp);
+ if (!memory_region_init_ram_flags_nomigrate(mr, owner, name, + size, 0, errp)) { + return false; + } mr->readonly = true; - return rv; + return true; } ---
[Prev in Thread] | Current Thread | [Next in Thread] |