linux/arch/s390
Claudio Imbrenda b108f7f0a2 KVM: s390: pv: handle secure storage exceptions for normal guests
With upcoming patches, normal guests might touch secure pages.

This patch extends the existing exception handler to convert the pages
to non secure also when the exception is triggered by a normal guest.

This can happen for example when a secure guest reboots; the first
stage of a secure guest is non secure, and in general a secure guest
can reboot into non-secure mode.

If the secure memory of the previous boot has not been cleared up
completely yet (which will be allowed to happen in an upcoming patch),
a non-secure guest might touch secure memory, which will need to be
handled properly.

This means that gmap faults must be handled and not cause termination
of the process. The handling is the same as userspace accesses, it's
enough to translate the gmap address to a user address and then let the
normal user fault code handle it.

Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Link: https://lore.kernel.org/r/20220628135619.32410-4-imbrenda@linux.ibm.com
Message-Id: <20220628135619.32410-4-imbrenda@linux.ibm.com>
Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
2022-07-13 14:42:11 +00:00
..
appldata s390/appldata: use struct_size() helper 2020-06-29 16:32:34 +02:00
boot s390: Add attestation query information 2022-07-11 11:29:51 +02:00
configs s390: enable CONFIG_HARDENED_USERCOPY in debug_defconfig 2022-04-12 11:56:08 +02:00
crypto more s390 updates for 5.19 merge window 2022-06-03 13:57:50 -07:00
hypfs s390/hypfs: fix typos in comments 2022-05-06 20:45:13 +02:00
include KVM: s390: pv: handle secure storage violations for protected guests 2022-07-13 14:42:11 +00:00
kernel KVM: s390: pv: handle secure storage violations for protected guests 2022-07-13 14:42:11 +00:00
kvm KVM: s390: pv: leak the topmost page table when destroy fails 2022-07-13 14:42:11 +00:00
lib s390/alternatives: provide identical sized orginal/alternative sequences 2022-05-17 15:16:28 +02:00
mm KVM: s390: pv: handle secure storage exceptions for normal guests 2022-07-13 14:42:11 +00:00
net s390/bpf: Fix typo in comment 2022-05-23 11:25:53 -07:00
pci KVM: s390: pci: add routines to start/stop interpretive execution 2022-07-11 09:54:33 +02:00
purgatory s390/purgatory: workaround llvm's IAS limitations 2022-05-17 15:16:28 +02:00
tools KVM: s390: Add facility 197 to the allow list 2022-07-13 15:25:25 +02:00
Kbuild kbuild: use more subdir- for visiting subdirectories while cleaning 2021-10-24 13:49:46 +09:00
Kconfig more s390 updates for 5.19 merge window 2022-06-03 13:57:50 -07:00
Kconfig.debug s390/Kconfig.debug: fix indentation 2022-06-01 12:03:15 +02:00
Makefile Kbuild updates for v5.19 2022-05-26 12:09:50 -07:00