Re: [PATCH v5 0/8] Generic IRQ entry/exit support for powerpc
From: John Ogness
Date: Wed Jul 15 2026 - 07:28:53 EST
Hi Mukesh,
On 2026-07-07, Mukesh Kumar Chaurasiya <mkchauras@xxxxxxxxx> wrote:
> On Tue, Jul 07, 2026 at 06:34:45PM +0200, Andreas Schwab wrote:
>> On Jul 07 2026, Mukesh Kumar Chaurasiya wrote:
>>
>> > diff --git a/arch/powerpc/include/asm/entry-common.h b/arch/powerpc/include/asm/entry-common.h
>> > index fc636c42e89a..b6373bae4524 100644
>> > --- a/arch/powerpc/include/asm/entry-common.h
>> > +++ b/arch/powerpc/include/asm/entry-common.h
>> > @@ -286,14 +286,6 @@ static inline void arch_interrupt_async_enter_prepare(struct pt_regs *regs)
>> >
>> > static inline void arch_interrupt_async_exit_prepare(struct pt_regs *regs)
>> > {
>> > - /*
>> > - * Adjust at exit so the main handler sees the true NIA. This must
>> > - * come before irq_exit() because irq_exit can enable interrupts, and
>> > - * if another interrupt is taken before nap_adjust_return has run
>> > - * here, then that interrupt would return directly to idle nap return.
>> > - */
>> > - nap_adjust_return(regs);
>> > -
>> > arch_interrupt_exit_prepare(regs);
>> > }
>> >
>> > diff --git a/arch/powerpc/include/asm/interrupt.h b/arch/powerpc/include/asm/interrupt.h
>> > index fb42a664ae54..1b45a49e9bed 100644
>> > --- a/arch/powerpc/include/asm/interrupt.h
>> > +++ b/arch/powerpc/include/asm/interrupt.h
>> > @@ -246,6 +246,7 @@ interrupt_handler void func(struct pt_regs *regs) \
>> > instrumentation_begin(); \
>> > irq_enter_rcu(); \
>> > ____##func (regs); \
>> > + nap_adjust_return(regs); \
>> > irq_exit_rcu(); \
>> > instrumentation_end(); \
>> > arch_interrupt_async_exit_prepare(regs); \
>>
>> This allows the system to boot normally.
>>
> Thanks for testing this. I am assuming you tried this without
> "powersave=off" command line option.
I am here after bisecting the same problem. (I also use a G5.)
I can also confirm that the above hack on top of v7.2-rc3 will boot
(without specifying powersave=off).
John Ogness