On Fri, 19 Dec 2025 13:23:52 +0100, Christophe Leroy (CS GROUP) wrote:
> Commit 2997876c4a1a ("powerpc/32: Restore clearing of MSR[RI] at
> interrupt/syscall exit") delayed clearing of MSR[RI], but missed that
> both MSR[RI] and MSR[EE] are cleared at the same time, so the commit
> also delayed the disabling of interrupts, leading to unexpected
> behaviour.
>
> To fix that, mostly revert the blamed commit and restore the clearing
> of MSR[RI] in interrupt_exit_kernel_prepare() instead. For 8xx it
> implies adding a synchronising instruction after the mtspr in order to
> make sure no instruction counter interrupt (used for perf events) will
> fire just after clearing MSR[RI].
>
> [...]
Applied to powerpc/fixes.
[1/1] powerpc/32: Restore disabling of interrupts at interrupt/syscall exit
https://git.kernel.org/powerpc/c/608328ba5b0619cbc28b409296b5e3840bcb97b6
cheers