The following commit has been merged into the x86/sgx branch of tip: Commit-ID: 3ad6fd77a2d62e8f4465b429b65805eaf88e1b9e Gitweb: https://git.kernel.org/tip/3ad6fd77a2d62e8f4465b429b65805eaf88e1b9e Author: Tony Luck <tony.luck@xxxxxxxxx> AuthorDate: Tue, 26 Oct 2021 15:00:50 -07:00 Committer: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> CommitterDate: Mon, 15 Nov 2021 11:13:16 -08:00 x86/sgx: Add check for SGX pages to ghes_do_memory_failure() SGX EPC pages do not have a "struct page" associated with them so the pfn_valid() sanity check fails and results in a warning message to the console. Add an additional check to skip the warning if the address of the error is in an SGX EPC page. Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx> Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Reviewed-by: Jarkko Sakkinen <jarkko@xxxxxxxxxx> Tested-by: Reinette Chatre <reinette.chatre@xxxxxxxxx> Link: https://lkml.kernel.org/r/20211026220050.697075-8-tony.luck@xxxxxxxxx --- drivers/acpi/apei/ghes.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c index 0c8330e..0c5c9ac 100644 --- a/drivers/acpi/apei/ghes.c +++ b/drivers/acpi/apei/ghes.c @@ -449,7 +449,7 @@ static bool ghes_do_memory_failure(u64 physical_addr, int flags) return false; pfn = PHYS_PFN(physical_addr); - if (!pfn_valid(pfn)) { + if (!pfn_valid(pfn) && !arch_is_platform_page(physical_addr)) { pr_warn_ratelimited(FW_WARN GHES_PFX "Invalid address in generic error data: %#llx\n", physical_addr);
![]() |