]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/32: Fix critical and debug interrupts on BOOKE
authorChristophe Leroy <christophe.leroy@csgroup.eu>
Wed, 7 Jul 2021 05:55:07 +0000 (05:55 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Fri, 6 Aug 2021 22:53:59 +0000 (08:53 +1000)
commit77a6f175ecf10a24ab349fab13d5130c9f901fcd
tree2a0c709b5cc14eb7d44588b64c41a47798f66a85
parentbd8040bc80186103bff596514cbc00f0a7925687
powerpc/32: Fix critical and debug interrupts on BOOKE

32 bits BOOKE have special interrupts for debug and other
critical events.

When handling those interrupts, dedicated registers are saved
in the stack frame in addition to the standard registers, leading
to a shift of the pt_regs struct.

Since commit b0f63e2981e7 ("powerpc/32: Don't save thread.regs on
interrupt entry"), the pt_regs struct is expected to be at the
same place all the time.

Instead of handling a special struct in addition to pt_regs, just
add those special registers to struct pt_regs.

Fixes: b0f63e2981e7 ("powerpc/32: Don't save thread.regs on interrupt entry")
Cc: stable@vger.kernel.org
Reported-by: Radu Rendec <radu.rendec@gmail.com>
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/028d5483b4851b01ea4334d0751e7f260419092b.1625637264.git.christophe.leroy@csgroup.eu
arch/powerpc/include/asm/ptrace.h
arch/powerpc/kernel/asm-offsets.c
arch/powerpc/kernel/head_booke.h