Description of problem: For now we have to enable allocation of PGSTE globally, using sysctl vm.allocate_pgste=1 (see bz 1454281) in order to be able to run qemu-kvm guests. This results in the double size of lowest level page tables of all processes. Latest upstream contribution allow to allocate PGSTE selectively, per process. This requires kernel, QEMU and binutil changes. Additional info: The QEMU patch is still being discussed upstream, but should soon be included. https://lists.gnu.org/archive/html/qemu-devel/2017-08/msg04363.html
Patch is now upstream: commit e9a3591fa09f273592451f8b9f83692bcbedb60c Author: Christian Borntraeger <borntraeger.com> Date: Wed Aug 23 12:16:23 2017 +0200 configure: enable --s390-pgste linker option
I believe we should remove the vm.allocate_pgste enablement in the same go, as we'll have kernel 4.14 with needed support anyway.
Fix included in qemu-kvm-ma-2.10.0-3.el7
Reproduced with qemu-kvm-ma-2.10.0-2.el7.s390x: [root@kerneldev7 qemu-2]# sysctl vm.allocate_pgste=0 vm.allocate_pgste = 0 [root@kerneldev7 qemu-2]# /usr/libexec/qemu-kvm -vnc :0 -monitor stdio -no-shutdown ioctl(KVM_CREATE_VM) failed: 22 Invalid argument Host kernel setup problem detected. Please verify: - for kernels supporting the switch_amode or user_mode parameters, whether user space is running in primary address space - for kernels supporting the vm.allocate_pgste sysctl, whether it is enabled qemu-kvm: failed to initialize KVM: Invalid argument qemu-kvm: Back to tcg accelerator Verified with qemu-kvm-ma-2.10.0-7.el7.s390x: # sysctl vm.allocate_pgste=0 vm.allocate_pgste = 0 [root@kerneldev7 qzhang]# /usr/libexec/qemu-kvm -vnc :0 -monitor stdio -no-shutdown QEMU 2.10.0 monitor - type 'help' for more information Boot a guest and it starts successfully: (1/1) smp_2.2048m.repeat1.run_test.Host_RHEL.RHEL_ALT.m7.u5.s390-virtio.qcow2.virtio_scsi.up.virtio_net.RHEL.ALT.7.4.s390x.io-github-autotest-qemu.boot: PASS (32.61 s) So, setting to VERIFIED.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2018:0831