Is unrecoverable_exception() really an interrupt handler ?
Nicholas Piggin
npiggin at gmail.com
Thu Feb 25 21:54:08 AEDT 2021
Excerpts from Christophe Leroy's message of February 24, 2021 6:15 pm:
> Hi Nick,
>
> You defined unrecoverable_exeption() as an interrupt handler in interrupt.h
>
> I think there are several issues around that:
>
> - do_bad_slb_fault() which is also an interrupt handler calls unrecoverable_exeption()
> - in exception-64s.S, unrecoverable_exeption() is called after machine_check_exception()
> - interrupt_exit_kernel_prepare() calls unrecoverable_exception()
>
> So in those cases, interrupt_enter_prepare() gets called twice, so things like for instance
> account_cpu_user_entry() gets called twice.
Hi Christophe,
You are right of course.
I would say we can revert it back to a regular function. I would just
remove it completely from machine_check_exception too.
Thanks,
Nick
More information about the Linuxppc-dev
mailing list