[PATCH 1/2] powerpc: fix graceful debugger recovery

Michael Ellerman mpe at ellerman.id.au
Thu Nov 10 21:25:53 AEDT 2016


Nicholas Piggin <npiggin at gmail.com> writes:

> On Thu, 10 Nov 2016 12:35:59 +1100
> Michael Ellerman <mpe at ellerman.id.au> wrote:
>
>> Nicholas Piggin <npiggin at gmail.com> writes:
>> 
>> > When exiting xmon with 'x' (exit and recover), oops_begin bails
>> > out immediately, but die then calls __die() and oops_end(), which
>> > cause a lot of bad things to happen.  
>> 
>> In fact oops_begin() returns 1, which oops_end() then passes directly to
>> raw_local_irq_restore() as flags. On 64-bit that actually works because
>> arch_local_irq_restore() takes just "en" (enable), not real flags. But
>> on 32-bit it's supposed to be the MSR value. So that's impressively
>> broken.
>
> Yeah, I guess most of the time you either go to debugger with
> sysrq, or in case of a crash don't try to graceful recover.

Yeah. It's debatable whether we should even allow graceful recovery, but
it's useful sometimes and regular users probably shouldn't have a
debugger enabled anyway.

cheers


More information about the Linuxppc-dev mailing list