提交 0e23347f 编写于 作者: R Rohan McLure 提交者: Michael Ellerman

powerpc/64: Add INTERRUPT_SANITIZE_REGISTERS Kconfig

Add Kconfig option for enabling clearing of registers on arrival in an
interrupt handler. This reduces the speculation influence of registers
on kernel internals. The option will be consumed by 64-bit systems that
feature speculation and wish to implement this mitigation.

This patch only introduces the Kconfig option, no actual mitigations.

The primary overhead of this mitigation lies in an increased number of
registers that must be saved and restored by interrupt handlers on
Book3S systems. Enable by default on Book3E systems, which prior to
this patch eagerly save and restore register state, meaning that the
mitigation when implemented will have minimal overhead.
Acked-by: NNicholas Piggin <npiggin@gmail.com>
Signed-off-by: NRohan McLure <rmclure@linux.ibm.com>
Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221201071019.1953023-1-rmclure@linux.ibm.com
上级 03f7c1d2
...@@ -534,6 +534,15 @@ config HOTPLUG_CPU ...@@ -534,6 +534,15 @@ config HOTPLUG_CPU
Say N if you are unsure. Say N if you are unsure.
config INTERRUPT_SANITIZE_REGISTERS
bool "Clear gprs on interrupt arrival"
depends on PPC64 && ARCH_HAS_SYSCALL_WRAPPER
default PPC_BOOK3E_64
help
Reduce the influence of user register state on interrupt handlers and
syscalls through clearing user state from registers before handling
the exception.
config PPC_QUEUED_SPINLOCKS config PPC_QUEUED_SPINLOCKS
bool "Queued spinlocks" if EXPERT bool "Queued spinlocks" if EXPERT
depends on SMP depends on SMP
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册