[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v7 0/4] s390: Support for Hotplug of Standby Memory
From: |
Matthew Rosato |
Subject: |
[Qemu-devel] [PATCH v7 0/4] s390: Support for Hotplug of Standby Memory |
Date: |
Wed, 30 Jul 2014 14:15:31 -0400 |
This patchset adds support in s390 for a pool of standby memory,
which can be set online/offline by the guest (ie, via chmem).
The standby pool of memory is allocated as the difference between
the initial memory setting and the maxmem setting.
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.
Sample qemu command snippet:
qemu -machine s390-ccw-virtio -m 1024M,maxmem=2048M,slots=32 -enable-kvm
This will allocate 1024M of active memory, and another 1024M
of standby memory. Example output from s390-tools lsmem:
=============================================================================
0x0000000000000000-0x000000000fffffff 256 online no 0-127
0x0000000010000000-0x000000001fffffff 256 online yes 128-255
0x0000000020000000-0x000000003fffffff 512 online no 256-511
0x0000000040000000-0x000000007fffffff 1024 offline - 512-1023
Memory device size : 2 MB
Memory block size : 256 MB
Total online memory : 1024 MB
Total offline memory: 1024 MB
The guest can dynamically enable part or all of the standby pool
via the s390-tools chmem, for example:
chmem -e 512M
And can attempt to dynamically disable:
chmem -d 512M
Changes for v7:
* Added patch to enforce the same memory alignments in s390-virtio.c,
so that shared code (like sclp) doesn't need to be dual paths.
Changes for v6:
* Fix in sclp.h - DeviceState parent --> SysBusDevice parent
in struct sclpMemoryHotplugDev.
* Fix in assign_storage - int this_subregion_size, should
be uint64_t.
* Added information on how to test in the cover letter.
Changes for v5:
* Since ACPI memory hotplug is now in, removed Igor's patches
from this set.
* Updated sclp.c to use object_resolve_path() instead of
object_property_find().
Matthew Rosato (4):
sclp-s390: Add device to manage s390 memory hotplug
virtio-ccw: Include standby memory when calculating storage increment
s390-virtio: Apply same memory boundaries as virtio-ccw
sclp-s390: Add memory hotplug SCLPs
hw/s390x/s390-virtio-ccw.c | 46 +++++--
hw/s390x/s390-virtio.c | 15 ++-
hw/s390x/sclp.c | 289 +++++++++++++++++++++++++++++++++++++++++++-
include/hw/s390x/sclp.h | 20 +++
qemu-options.hx | 3 +-
target-s390x/cpu.h | 18 +++
target-s390x/kvm.c | 5 +
7 files changed, 375 insertions(+), 21 deletions(-)
--
1.7.9.5
- [Qemu-devel] [PATCH v7 0/4] s390: Support for Hotplug of Standby Memory,
Matthew Rosato <=