On Tue, Oct 23, 2018 at 05:23:05PM +0200, David Hildenbrand wrote:
> Should not be a problem right now, but it could theoretically happen
> in the future.
>
> Signed-off-by: David Hildenbrand <david@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
> ---
> 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 996ad1490f..8be63c8032 100644
> --- a/hw/mem/memory-device.c
> +++ b/hw/mem/memory-device.c
> @@ -85,7 +85,8 @@ static void memory_device_check_addable(MachineState *ms, uint64_t size,
>
> /* will we exceed the total amount of memory specified */
> memory_device_used_region_size(OBJECT(ms), &used_region_size);
> - if (used_region_size + size > ms->maxram_size - ms->ram_size) {
> + if (used_region_size + size < used_region_size ||
> + used_region_size + size > ms->maxram_size - ms->ram_size) {
> error_setg(errp, "not enough space, currently 0x%" PRIx64
> " in use of total space for memory devices 0x" RAM_ADDR_FMT,
> used_region_size, ms->maxram_size - ms->ram_size);
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson