On Wed, 20 Nov 2019 06:43:19 -0500 Janosch Frank <fran...@linux.ibm.com> wrote:
Do you have a branch with this somewhere? > Most of the QEMU changes for PV are related to the new IPL type with > subcodes 8 - 10 and the execution of the necessary Ultravisor calls to > IPL secure guests. Note that we can only boot into secure mode from > normal mode, i.e. stfle 161 is not active in secure mode. > > The other changes related to data gathering for emulation and > disabling addressing checks in secure mode, as well as CPU resets. > > While working on this I sprinkled in some cleanups, as we sometimes > significantly increase line count of some functions and they got > unreadable. Any other cleanups than in the first two patches? I.e., anything that could be picked up independently? > > Janosch Frank (15): > s390x: Cleanup cpu resets > s390x: Beautify diag308 handling > s390x: protvirt: Add diag308 subcodes 8 - 10 > Header sync protvirt > s390x: protvirt: Sync PV state > s390x: protvirt: Support unpack facility > s390x: protvirt: Handle diag 308 subcodes 0,1,3,4 > s390x: protvirt: KVM intercept changes > s390x: protvirt: SCLP interpretation > s390x: protvirt: Add new VCPU reset functions > RFC: s390x: Exit on vcpu reset error > s390x: protvirt: Set guest IPL PSW > s390x: protvirt: Move diag 308 data over SIDAD > s390x: protvirt: Disable address checks for PV guest IO emulation > s390x: protvirt: Handle SIGP store status correctly > > hw/s390x/Makefile.objs | 1 + > hw/s390x/ipl.c | 81 +++++++++++++++++- > hw/s390x/ipl.h | 35 ++++++++ > hw/s390x/pv.c | 123 +++++++++++++++++++++++++++ > hw/s390x/pv.h | 27 ++++++ > hw/s390x/s390-virtio-ccw.c | 79 ++++++++++++++--- > hw/s390x/sclp.c | 16 ++++ > include/hw/s390x/sclp.h | 2 + > linux-headers/asm-s390/kvm.h | 4 +- > linux-headers/linux/kvm.h | 43 ++++++++++ > target/s390x/cpu.c | 127 ++++++++++++++-------------- > target/s390x/cpu.h | 1 + > target/s390x/cpu_features_def.inc.h | 1 + > target/s390x/diag.c | 108 +++++++++++++++++------ > target/s390x/ioinst.c | 46 ++++++---- > target/s390x/kvm-stub.c | 10 ++- > target/s390x/kvm.c | 58 +++++++++++-- > target/s390x/kvm_s390x.h | 4 +- > target/s390x/sigp.c | 7 +- > 19 files changed, 640 insertions(+), 133 deletions(-) > create mode 100644 hw/s390x/pv.c > create mode 100644 hw/s390x/pv.h >