]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/xive: Prevent page fault issues in the machine crash handler
authorCédric Le Goater <clg@kaod.org>
Thu, 31 Oct 2019 06:31:00 +0000 (07:31 +0100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 13 Nov 2019 05:58:10 +0000 (16:58 +1100)
commita8b868a276c5082c6c87558f4061f44d0b3a4d6b
tree6b42f60ef8f269333fc0db134fe89d274e720ce7
parent5972ef636753c59752e1c71658d0d5a3d212a930
powerpc/xive: Prevent page fault issues in the machine crash handler

When the machine crash handler is invoked, all interrupts are masked
but interrupts which have not been started yet do not have an ESB page
mapped in the Linux address space. This crashes the 'crash kexec'
sequence on sPAPR guests.

To fix, force the mapping of the ESB page when an interrupt is being
mapped in the Linux IRQ number space. This is done by setting the
initial state of the interrupt to OFF which is not necessarily the
case on PowerNV.

Fixes: 2d7ecd8d170c ("powerpc/xive: Native exploitation of the XIVE interrupt controller")
Cc: stable@vger.kernel.org # v4.12+
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20191031063100.3864-1-clg@kaod.org
arch/powerpc/sysdev/xive/common.c