Support for selective use of 4 KiB page tables on IBM z Systems
This update adds the option `--s390-pgste` to the *ld* linker from the _binutils_ package to mark applications for the IBM z Systems architecture that require 4 KiB memory page tables on the lowest level. As a result, use of this feature can be restricted only to applications that need it, allowing optimal use of space by all applications on the system. Note that the *qemu* backend no longer forces 4 KiB lowest level page tables on all running applications. Make sure to specify the new option if your applications require them.
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.
We have to backport for the binutils part the following commit
Author: Andreas Krebbel <firstname.lastname@example.org>
Date: Thu Jun 8 17:24:50 2017 +0200
S/390: Add support for pgste marker
Verified with binutils-2.27-27.base.el7.s390x.
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.