On 11/20/19 2:26 PM, Cornelia Huck wrote: > On Wed, 20 Nov 2019 06:43:19 -0500 > Janosch Frank 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? Maybe patch #11, but that's RFC > >> >> 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 >> > >