OSDN Git Service

powerpc/64s: Move HMI IRQ stat from percpu variable to paca.
authorMahesh Salgaonkar <mahesh@linux.ibm.com>
Tue, 23 Jun 2020 10:27:50 +0000 (15:57 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 29 Jul 2020 13:47:53 +0000 (23:47 +1000)
commitada68a66b72687e6b74e35c42efd1783e84b01fd
treeb7e60ccb64c4a803d3049f7773651bcc7f2d10cd
parentd3c61954fc1827df571e235b9a98e10108ef5c3d
powerpc/64s: Move HMI IRQ stat from percpu variable to paca.

With the proposed change in percpu bootmem allocator to use page
mapping [1], the percpu first chunk memory area can come from vmalloc
ranges. This makes the HMI (Hypervisor Maintenance Interrupt) handler
crash the kernel whenever percpu variable is accessed in real mode.
This patch fixes this issue by moving the HMI IRQ stat inside paca for
safe access in realmode.

[1] https://lore.kernel.org/linuxppc-dev/20200608070904.387440-1-aneesh.kumar@linux.ibm.com/

Suggested-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Signed-off-by: Mahesh Salgaonkar <mahesh@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/159290806973.3642154.5244613424529764050.stgit@jupiter
arch/powerpc/include/asm/hardirq.h
arch/powerpc/include/asm/paca.h
arch/powerpc/kernel/irq.c
arch/powerpc/kernel/mce.c
arch/powerpc/kvm/book3s_hv_ras.c