This will not change the qemu model, we simply allow to enable the facility for the qemu model.
A current upstream kernel (compiled for e.g. z900) can be tricked into using MVCOS for uaccess by simply enabling the facility. This will work even though the kernel is not compiled with z10+ support, as this facility is also detected and used dynamically. qemu-system-s390x ... -cpu qemu,mvcos=on ... Requires my PGM fix series: https://lists.nongnu.org/archive/html/qemu-devel/2017-06/msg02631.html Based on an original patch by Miroslav Benes v1 -> v2: - Squashed CPU model change and don't fake abscence - Introduced a memhelper to do bulk access - Minor style and bug fixes suggested/found by Thomas + Richard - CR0_SECONDARY define was wrong :( - introduce defines for AC_* - enable the instruction for USER MODE (however will always result in a PRIVILEDGED exception) David Hildenbrand (2): target/s390x: change PSW_SHIFT_KEY target/s390x: implement mvcos instruction target/s390x/cpu.h | 24 +++++- target/s390x/cpu_models.c | 1 + target/s390x/helper.h | 1 + target/s390x/insn-data.def | 2 + target/s390x/mem_helper.c | 180 +++++++++++++++++++++++++++++++++++++++++---- target/s390x/translate.c | 11 ++- 6 files changed, 201 insertions(+), 18 deletions(-) -- 2.9.3