[PATCH 0/4] Basic recovery for machine checks inside SGX

From: Tony Luck
Date: Thu Jul 08 2021 - 14:14:43 EST


Cover the easy cases:
1) memory errors reported by patrol scrubber in unused SGX pages
2) machine checks due to poison consumption from SGX_PAGE_TYPE_REG
pages
3) When poison is consumed in an enclave inside a guest, just kill
the guest.

Tony Luck (4):
x86/sgx: Track phase and type of SGX EPC pages
x86/sgx: Add basic infrastructure to recover from errors in SGX memory
x86/sgx: Hook sgx_memory_failure() into mainline code
x86/sgx: Add hook to error injection address validation

.../firmware-guide/acpi/apei/einj.rst | 19 +++
arch/x86/include/asm/sgx.h | 6 +
arch/x86/kernel/cpu/sgx/encl.c | 4 +-
arch/x86/kernel/cpu/sgx/ioctl.c | 4 +-
arch/x86/kernel/cpu/sgx/main.c | 147 +++++++++++++++++-
arch/x86/kernel/cpu/sgx/sgx.h | 17 +-
arch/x86/kernel/cpu/sgx/virt.c | 11 +-
drivers/acpi/apei/einj.c | 3 +-
include/linux/mm.h | 15 ++
mm/memory-failure.c | 4 +
10 files changed, 219 insertions(+), 11 deletions(-)


base-commit: 62fb9874f5da54fdb243003b386128037319b219
--
2.29.2