Cc'ing qemu-trivial@ for this single patch.
On 3/6/21 12:54 AM, Philippe Mathieu-Daudé wrote:
> There is no reason to not have memory_region_to_absolute_addr()
> work with a const MemoryRegion. Else we get:
>
> softmmu/memory.c: error: passing argument 1 of
> ‘memory_region_to_absolute_addr’ discards ‘const’ qualifier from pointer
> target type [-Werror=discarded-qualifiers]
> 6666 | myaddr = memory_region_to_absolute_addr(constmr, addr);
> | ^~
> softmmu/memory.c:410:60: note: expected ‘MemoryRegion *’ but argument is of
> type ‘const MemoryRegion *’
> 410 | static hwaddr memory_region_to_absolute_addr(MemoryRegion *mr, hwaddr
> offset)
> | ~~~~~~~~~~~~~~^~
>
> Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org>
> ---
> softmmu/memory.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/softmmu/memory.c b/softmmu/memory.c
> index 991d9227a88..6d1e96ba37d 100644
> --- a/softmmu/memory.c
> +++ b/softmmu/memory.c
> @@ -407,9 +407,10 @@ static inline uint64_t
> memory_region_shift_write_access(uint64_t *value,
> return tmp;
> }
>
> -static hwaddr memory_region_to_absolute_addr(MemoryRegion *mr, hwaddr offset)
> +static hwaddr memory_region_to_absolute_addr(const MemoryRegion *mr,
> + hwaddr offset)
> {
> - MemoryRegion *root;
> + const MemoryRegion *root;
> hwaddr abs_addr = offset;
>
> abs_addr += mr->addr;
>