On Tue, Nov 17, 2020 at 07:45:28PM -0500, Sasha Levin wrote:
On Tue, Nov 17, 2020 at 10:51:16AM -0800, Kamal Mostafa wrote:
On Tue, Nov 3, 2020 at 4:22 PM Michael Ellerman mpe@ellerman.id.au wrote:
Greg Kroah-Hartman gregkh@linuxfoundation.org writes:
From: Nicholas Piggin npiggin@gmail.com
[ Upstream commit 66acd46080bd9e5ad2be4b0eb1d498d5145d058e ]
powerpc uses IPIs in some situations to switch a kernel thread away from a lazy tlb mm, which is subject to the TLB flushing race described in the changelog introducing ARCH_WANT_IRQS_OFF_ACTIVATE_MM.
Signed-off-by: Nicholas Piggin npiggin@gmail.com Signed-off-by: Michael Ellerman mpe@ellerman.id.au Link:
https://lore.kernel.org/r/20200914045219.3736466-3-npiggin@gmail.com
Signed-off-by: Sasha Levin sashal@kernel.org
arch/powerpc/Kconfig | 1 + arch/powerpc/include/asm/mmu_context.h | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index f38d153d25861..0bc53f0e37c0f 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -152,6 +152,7 @@ config PPC select ARCH_USE_BUILTIN_BSWAP select ARCH_USE_CMPXCHG_LOCKREF if PPC64 select ARCH_WANT_IPC_PARSE_VERSION
select ARCH_WANT_IRQS_OFF_ACTIVATE_MM
This depends on upstream commit:
d53c3dfb23c4 ("mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race")
Which I don't see in 4.19 stable, or in the email thread here.
So this shouldn't be backported to 4.19 unless that commit is also backported.
cheers
Hi-
This glitch has made its way into 4.14.y ... [4.14.y] c2bca8712a19 powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM But 4.14.y does not carry the prereq that introduces that config.
I'll queue up the 4.19 backport for 4.14 too, thanks!
Thanks Sasha.
And nevermind my other concern ...
It would seem that the intent is that it should be *only* enabled (currently at least) for arches that will explicitly select it, but the config advice does not make that very clear. Could that new config get an explicit "default n" line?
... I see now that a 'default' isn't necessary; the config only appears for arches which explicitly select it, as intended.
-Kamal