From: Christian Borntraeger Date: Mon, 30 Jul 2018 14:09:26 +0000 (+0200) Subject: s390x/sclp: fix maxram calculation X-Git-Tag: qemu-xen-4.12.0-rc1~21^2 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=408e5ace517ff18c9c7cd918fc93358162e6e26d;p=qemu-xen.git s390x/sclp: fix maxram calculation We clamp down ram_size to match the sclp increment size. We do not do the same for maxram_size, which means for large guests with some sizes (e.g. -m 50000) maxram_size differs from ram_size. This can break other code (e.g. CMMA migration) which uses maxram_size to calculate the number of pages and then throws some errors. Fixes: 82fab5c5b90e468f3e9d54c ("s390x/sclp: remove memory hotplug support") Signed-off-by: Christian Borntraeger CC: qemu-stable@nongnu.org CC: David Hildenbrand Message-Id: <1532959766-53343-1-git-send-email-borntraeger@de.ibm.com> Reviewed-by: David Hildenbrand Signed-off-by: Cornelia Huck --- diff --git a/hw/s390x/sclp.c b/hw/s390x/sclp.c index bd2a024efd..4510a800cb 100644 --- a/hw/s390x/sclp.c +++ b/hw/s390x/sclp.c @@ -320,6 +320,7 @@ static void sclp_memory_init(SCLPDevice *sclp) initial_mem = initial_mem >> increment_size << increment_size; machine->ram_size = initial_mem; + machine->maxram_size = initial_mem; /* let's propagate the changed ram size into the global variable. */ ram_size = initial_mem; }