* David Hildenbrand (da...@redhat.com) wrote:
> The "at" should actually be a "before".
>     if (new_addr < address_space_start)
>      -> "can't add memory ... before... $address_space_start"
> 
> So it looks similar to the other check
>     } else if ((new_addr + size) > address_space_end)
>      -> "can't add memory ... beyond..."
> 
> Signed-off-by: David Hildenbrand <da...@redhat.com>
> ---
>  hw/mem/memory-device.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/mem/memory-device.c b/hw/mem/memory-device.c
> index 6de4f70bb4..efacbc2a7d 100644
> --- a/hw/mem/memory-device.c
> +++ b/hw/mem/memory-device.c
> @@ -146,7 +146,8 @@ uint64_t memory_device_get_free_addr(MachineState *ms, 
> const uint64_t *hint,
>          new_addr = *hint;
>          if (new_addr < address_space_start) {
>              error_setg(errp, "can't add memory [0x%" PRIx64 ":0x%" PRIx64
> -                       "] at 0x%" PRIx64, new_addr, size, 
> address_space_start);
> +                       "] before 0x%" PRIx64, new_addr, size,
> +                       address_space_start);

OK, so


Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com>

>              return 0;
>          } else if ((new_addr + size) > address_space_end) {

That comparison (that's already there) doesn't look wrap-safe?

Dave
>              error_setg(errp, "can't add memory [0x%" PRIx64 ":0x%" PRIx64

> -- 
> 2.17.1
> 
--
Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK

Reply via email to