On Tue, Oct 31, 2017 at 03:38:29PM +0000, James Morse wrote:
> 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.
>
> 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 <[email protected]>
> Suggested-by: Linus Torvalds <[email protected]>
> Signed-off-by: James Morse <[email protected]>
> CC: Tyler Baicar <[email protected]>
> CC: Dongjiu Geng <[email protected]>
> CC: Xie XiuQi <[email protected]>
>
> ---
> CC'd people I've seen posting CPER log fragments, could you give this a
> test on your platforms?
>
> drivers/acpi/apei/ghes.c | 45 +++++++++++++++------------------------------
> 1 file changed, 15 insertions(+), 30 deletions(-)
Reviewed-by: Borislav Petkov <[email protected]>
--
Regards/Gruss,
Boris.
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284
(AG Nürnberg)
--