From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58725) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XOR7l-0001bx-7N for qemu-devel@nongnu.org; Mon, 01 Sep 2014 08:54:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XOR7d-00053z-Fq for qemu-devel@nongnu.org; Mon, 01 Sep 2014 08:54:21 -0400 Received: from e06smtp13.uk.ibm.com ([195.75.94.109]:35016) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XOR7d-00053j-77 for qemu-devel@nongnu.org; Mon, 01 Sep 2014 08:54:13 -0400 Received: from /spool/local by e06smtp13.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 1 Sep 2014 13:54:11 +0100 Received: from b06cxnps4075.portsmouth.uk.ibm.com (d06relay12.portsmouth.uk.ibm.com [9.149.109.197]) by d06dlp03.portsmouth.uk.ibm.com (Postfix) with ESMTP id 04C3E1B08023 for ; Mon, 1 Sep 2014 13:55:10 +0100 (BST) Received: from d06av02.portsmouth.uk.ibm.com (d06av02.portsmouth.uk.ibm.com [9.149.37.228]) by b06cxnps4075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id s81CsAN443385046 for ; Mon, 1 Sep 2014 12:54:10 GMT Received: from d06av02.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av02.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s81Cs86i002537 for ; Mon, 1 Sep 2014 06:54:09 -0600 From: Christian Borntraeger Date: Mon, 1 Sep 2014 14:54:11 +0200 Message-Id: <1409576070-55803-1-git-send-email-borntraeger@de.ibm.com> Subject: [Qemu-devel] [PULL 00/19] s390x/kvm: Several updates/fixes/features List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: qemu-devel , Alexander Graf , Christian Borntraeger , Jens Freimann , Anthony Liguori , Cornelia Huck , Richard Henderson Peter, the following changes since commit 8b3030114a449e66c68450acaac4b66f26d91416: Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20140829' into staging (2014-08-29 15:48:15 +0100) are available in the git repository at: git://github.com/borntraeger/qemu.git tags/kvm-s390-20140901 for you to fetch changes up to 218829db2303e3d61f901f1d12fd4f7cd03644e1: s390x/gdb: coding style fixes (2014-09-01 09:45:19 +0200) ---------------------------------------------------------------- s390x/kvm: Several updates/fixes/features 1. s390x/kvm: avoid synchronize_rcu's in kernel ---------------------------------------------- The first patches change s390x/kvm code to issue VCPU specific ioctls from the VCPU thread. This will avoid unnecessary synchronize_rcu in the kernel, which caused a noticably slowdown with many guest CPUs. It speeds up all start/restart/reset operations involving cpus drastically. 2. s390-ccw.img: block size and DASD format support --------------------------------------------------- The second part changes the s390-ccw bios to IPL (boot) more disk formats than before. Furthermore a small fix is made to the console output of the bios. 3. s390: Support for Hotplug of Standby Memory ---------------------------------------------- The third part 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 4. s390x/gdb: various fixes --------------------------- * Patch 1 fixes a bug where the cc was changed accidentally. * Patch 2 adds the gdb feature XML files for s390x * Patch 3 Define acr and fpr registers as coprocessor registers. This allows us to reuse the feature XML files. * Patch 4 whitespace fixes ---------------------------------------------------------------- Christian Borntraeger (1): pc-bios/s390-ccw: Do proper console setup David Hildenbrand (8): s390x/kvm: run guest triggered resets on the target vcpu thread s390x/kvm: execute sigp orders on the target vcpu thread s390x/kvm: execute "system reset" cpu resets on the vcpu thread s390x/kvm: execute the first cpu reset on the vcpu thread s390x/gdb: don't touch the cc if tcg is not enabled s390x/gdb: add the feature xml files for s390x s390x/gdb: generate target.xml and handle fp/ac as coprocessors s390x/gdb: coding style fixes Eugene (jno) Dvurechenski (6): pc-bios/s390-ccw: support all virtio block size pc-bios/s390-ccw: handle more ECKD DASD block sizes pc-bios/s390-ccw Improve ECKD informational message pc-bios/s390-ccw Really big EAV ECKD DASD handling pc-bios/s390-ccw: IPL from DASD with format variations pc-bios/s390-ccw.img binary update 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 configure | 1 + gdb-xml/s390-acr.xml | 26 ++++ gdb-xml/s390-fpr.xml | 27 +++++ gdb-xml/s390x-core64.xml | 28 +++++ hw/s390x/s390-virtio-ccw.c | 46 ++++++-- hw/s390x/s390-virtio.c | 15 ++- hw/s390x/sclp.c | 289 ++++++++++++++++++++++++++++++++++++++++++++- include/hw/s390x/sclp.h | 20 ++++ pc-bios/s390-ccw.img | Bin 17752 -> 17752 bytes pc-bios/s390-ccw/bootmap.c | 107 ++++++++++------- pc-bios/s390-ccw/bootmap.h | 2 +- pc-bios/s390-ccw/virtio.c | 48 ++++++-- pc-bios/s390-ccw/virtio.h | 2 +- qemu-options.hx | 3 +- target-s390x/cpu-qom.h | 1 + target-s390x/cpu.c | 10 +- target-s390x/cpu.h | 73 ++++++------ target-s390x/gdbstub.c | 109 ++++++++++++----- target-s390x/kvm.c | 28 +++-- target-s390x/misc_helper.c | 30 ++--- 20 files changed, 692 insertions(+), 173 deletions(-) create mode 100644 gdb-xml/s390-acr.xml create mode 100644 gdb-xml/s390-fpr.xml create mode 100644 gdb-xml/s390x-core64.xml