diff options
author | Heiko Carstens <hca@linux.ibm.com> | 2023-10-24 10:15:20 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-12-08 08:52:24 +0100 |
commit | 7bfe7741468c47309ff2876e9ef4aff86f40ada1 (patch) | |
tree | efa07cfe5ae93cee76337574b09501af3a634272 /drivers/ntb | |
parent | 8db5cb33d6e4b63778413a82340ebae72db0e60d (diff) | |
download | linux-stable-7bfe7741468c47309ff2876e9ef4aff86f40ada1.tar.gz linux-stable-7bfe7741468c47309ff2876e9ef4aff86f40ada1.tar.bz2 linux-stable-7bfe7741468c47309ff2876e9ef4aff86f40ada1.zip |
s390/cmma: fix handling of swapper_pg_dir and invalid_pg_dir
[ Upstream commit 84bb41d5df48868055d159d9247b80927f1f70f9 ]
If the cmma no-dat feature is available the kernel page tables are walked
to identify and mark all pages which are used for address translation (all
region, segment, and page tables). In a subsequent loop all other pages are
marked as "no-dat" pages with the ESSA instruction.
This information is visible to the hypervisor, so that the hypervisor can
optimize purging of guest TLB entries. All pages used for swapper_pg_dir
and invalid_pg_dir are incorrectly marked as no-dat, which in turn can
result in incorrect guest TLB flushes.
Fix this by marking those pages correctly as being used for DAT.
Cc: <stable@vger.kernel.org>
Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/ntb')
0 files changed, 0 insertions, 0 deletions