From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47360) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WmmsG-0005ru-PP for qemu-devel@nongnu.org; Tue, 20 May 2014 12:26:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wmms7-0001qF-3o for qemu-devel@nongnu.org; Tue, 20 May 2014 12:26:44 -0400 Received: from e39.co.us.ibm.com ([32.97.110.160]:55377) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wmms6-0001mg-SW for qemu-devel@nongnu.org; Tue, 20 May 2014 12:26:35 -0400 Received: from /spool/local by e39.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 20 May 2014 10:26:33 -0600 Received: from b01cxnp22036.gho.pok.ibm.com (b01cxnp22036.gho.pok.ibm.com [9.57.198.26]) by d01dlp02.pok.ibm.com (Postfix) with ESMTP id 68C076E8045 for ; Tue, 20 May 2014 12:26:22 -0400 (EDT) Received: from d01av01.pok.ibm.com (d01av01.pok.ibm.com [9.56.224.215]) by b01cxnp22036.gho.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id s4KGQUPe64028834 for ; Tue, 20 May 2014 16:26:30 GMT Received: from d01av01.pok.ibm.com (localhost [127.0.0.1]) by d01av01.pok.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s4KGQTO3000633 for ; Tue, 20 May 2014 12:26:29 -0400 From: Matthew Rosato Date: Tue, 20 May 2014 12:26:24 -0400 Message-Id: <1400603188-3533-1-git-send-email-mjrosato@linux.vnet.ibm.com> Subject: [Qemu-devel] [PATCH v4 0/4] s390: Support for Hotplug of Standby Memory List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: agraf@suse.de, borntraeger@de.ibm.com, aliguori@amazon.com, imammedo@redhat.com, cornelia.huck@de.ibm.com, pbonzini@redhat.com, rth@twiddle.net This patchset adds support in s390 for a pool of standby memory, which can be set online/offline by the guest (ie, via chmem). New options, maxmem and slots, are added to the QEMU command line memory parameter to specify the total amount of memory available to the guest as well as the number of memory slots available. As part of this work, additional results are provided for the Read SCP Information SCLP, and new implentation is added for the Read Storage Element Information, Attach Storage Element, Assign Storage and Unassign Storage SCLPs, which enables the s390 guest to manipulate the standby memory pool. This patchset is based on work originally done by Jeng-Fang (Nick) Wang. Changes for v4: * Remove initialization code from get_sclp_memory_hotplug_dev() and place in its own function, init_sclp_memory_hotplug_dev(). * Add hit to qemu-options.hx to note the fact that the memory size specified via -m might be forced to a boundary. * Account for the legacy s390 machine, which does not support memory hotplug. * Fix a bug in sclp.c - Change memory hotplug device parent to sysbus. * Pulled latest version of Igor's patch. Changes for v3: * Remove some patches shared with ACPI memory hotplug that are now applied to master * Fix in sclp.h to avoid compiler error for s390x-linux-user mode * Fix in s390-virtio-ccw.c to avoid checking the value of mhd->increment_size before it's been set with a meaningful value. * Add MAX_STORAGE_INCREMENTS Changes for v2: * Removed the patch that introduced the standby-mem operand and instead included Igor Mammedov's patches that add the mem-opts 'maxmem' and 'slots', with a slight modification due to the removal of qemu_opts_create_nofail. * Patch 3 was inserted to add a new qom object that encapsulate variables used by s390 memory hotplug. Patches 4 and 5 adjusted to use this object. * Added additional code comments and other minor changes per Alexander Graf's comments Igor Mammedov (1): vl.c: extend -m option to support options for memory hotplug Matthew Rosato (3): sclp-s390: Add device to manage s390 memory hotplug virtio-ccw: Include standby memory when calculating storage increment sclp-s390: Add memory hotplug SCLPs hw/s390x/s390-virtio-ccw.c | 46 +++++-- hw/s390x/sclp.c | 297 +++++++++++++++++++++++++++++++++++++++++++- include/hw/boards.h | 2 + include/hw/s390x/sclp.h | 20 +++ qemu-options.hx | 10 +- target-s390x/cpu.h | 18 +++ target-s390x/kvm.c | 5 + vl.c | 51 ++++++++ 8 files changed, 432 insertions(+), 17 deletions(-) -- 1.7.9.5