FAILED: patch "[PATCH] ACPI / APEI: Replace ioremap_page_range() with fixmap" failed to apply to 4.14-stable tree
Subsystems (5)
[email protected]
maintainerThe patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
4f89fa286f6729312e227e7c2d764e8e7b9d340eMon Sep 17 00:00:00 2001
From: James Morse <[email protected]>
Date: Mon, 6 Nov 2017 18:44:24 +0000
Subject: [PATCH] ACPI / APEI: Replace ioremap_page_range() with fixmap
Replace ghes_io{re,un}map_pfn_{nmi,irq}()s use of ioremap_page_range() with __set_fixmap() as ioremap_page_range() may sleep to allocate a new level of page-table, even if its passed an existing final-address to use in the mapping.
The GHES driver can only be enabled for architectures that selectHAVE_ACPI_APEI: Add fixmap entries to both x86 and arm64.
clear_fixmap() does the TLB invalidation in __set_fixmap() for arm64 and __set_pte_vaddr() for x86. In each case its the same as the respective arch_apei_flush_tlb_one().
arch/arm64/include/asm/fixmap.h +7 -0
@@ -51,6 +51,13 @@ enum fixed_addresses {FIX_EARLYCON_MEM_BASE ,FIX_TEXT_POKE0 , + +#ifdef CONFIG_ACPI_APEI_GHES +/* Used for GHES mapping from assorted contexts */ +FIX_APEI_GHES_IRQ , +FIX_APEI_GHES_NMI , +#endif /* CONFIG_ACPI_APEI_GHES */ + __end_of_permanent_fixed_addresses,/*
arch/x86/include/asm/fixmap.h +6 -0
@@ -104,6 +104,12 @@ enum fixed_addresses {FIX_GDT_REMAP_BEGIN ,FIX_GDT_REMAP_END =FIX_GDT_REMAP_BEGIN +NR_CPUS -1 , +#ifdef CONFIG_ACPI_APEI_GHES +/* Used for GHES mapping from assorted contexts */ +FIX_APEI_GHES_IRQ , +FIX_APEI_GHES_NMI , +#endif + __end_of_permanent_fixed_addresses,/*
drivers/acpi/apei/ghes.c +14 -30
98 lines not on this page · raw message