summaryrefslogtreecommitdiff
path: root/security
diff options
context:
space:
mode:
authorJames Morse <james.morse@arm.com>2017-11-06 18:44:24 +0000
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-11-07 12:12:44 +0100
commit4f89fa286f6729312e227e7c2d764e8e7b9d340e (patch)
tree1e7dd47667d1c871dc741ccbfa90b6016f7e6164 /security
parentc49870e89f4d2c21c76ebe90568246bb0f3572b7 (diff)
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 select HAVE_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(). Reported-by: Fengguang Wu <fengguang.wu@intel.com> Suggested-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: James Morse <james.morse@arm.com> Reviewed-by: Borislav Petkov <bp@suse.de> Tested-by: Tyler Baicar <tbaicar@codeaurora.org> Tested-by: Toshi Kani <toshi.kani@hpe.com> [ For the arm64 bits: ] Acked-by: Will Deacon <will.deacon@arm.com> [ For the x86 bits: ] Acked-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Cc: All applicable <stable@vger.kernel.org>
Diffstat (limited to 'security')
0 files changed, 0 insertions, 0 deletions