Re: [PATCH] cfi: Fix __cfi_slowpath_diag RCU usage with cpuidle

From: Kees Cook
Date: Mon Jun 13 2022 - 15:01:46 EST


On Tue, 31 May 2022 10:59:10 -0700, Sami Tolvanen wrote:
> RCU_NONIDLE usage during __cfi_slowpath_diag can result in an invalid
> RCU state in the cpuidle code path:
>
> WARNING: CPU: 1 PID: 0 at kernel/rcu/tree.c:613 rcu_eqs_enter+0xe4/0x138
> ...
> Call trace:
> rcu_eqs_enter+0xe4/0x138
> rcu_idle_enter+0xa8/0x100
> cpuidle_enter_state+0x154/0x3a8
> cpuidle_enter+0x3c/0x58
> do_idle.llvm.6590768638138871020+0x1f4/0x2ec
> cpu_startup_entry+0x28/0x2c
> secondary_start_kernel+0x1b8/0x220
> __secondary_switched+0x94/0x98
>
> [...]

Applied to for-next/hardening, thanks!

[1/1] cfi: Fix __cfi_slowpath_diag RCU usage with cpuidle
https://git.kernel.org/kees/c/57cd6d157eb4

--
Kees Cook