[PATCH] powerpc/smp: Do not disable IPI interrupts during suspend
Benjamin Herrenschmidt
benh at kernel.crashing.org
Sat Jul 28 08:20:31 EST 2012
On Fri, 2012-07-27 at 16:58 -0500, Kumar Gala wrote:
> On Jul 20, 2012, at 7:47 AM, Zhao Chenhui wrote:
>
> > During suspend, all interrupts including IPI will be disabled. In this case,
> > the suspend process will hang in SMP. To prevent this, pass the flag
> > IRQF_NO_SUSPEND when requesting IPI irq.
> >
> > Signed-off-by: Zhao Chenhui <chenhui.zhao at freescale.com>
> > Signed-off-by: Li Yang <leoli at freescale.com>
> > ---
> > arch/powerpc/kernel/smp.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
>
> BenH,
>
> Can you ack?
No I'll merge it but not until it's been in next for a bit unless you
have some strong emergency there, it's on my mental list of things to
shovel into next after rc1.
Curiosity: didn't we use to disable all non-boot CPUs on suspend ?
Cheers,
Ben.
> - k
>
> >
> > diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
> > index fecb038..d26bbf8 100644
> > --- a/arch/powerpc/kernel/smp.c
> > +++ b/arch/powerpc/kernel/smp.c
> > @@ -171,7 +171,7 @@ int smp_request_message_ipi(int virq, int msg)
> > }
> > #endif
> > err = request_irq(virq, smp_ipi_action[msg],
> > - IRQF_PERCPU | IRQF_NO_THREAD,
> > + IRQF_PERCPU | IRQF_NO_THREAD | IRQF_NO_SUSPEND,
> > smp_ipi_name[msg], 0);
> > WARN(err < 0, "unable to request_irq %d for %s (rc %d)\n",
> > virq, smp_ipi_name[msg], err);
> > --
> > 1.6.4.1
> >
More information about the Linuxppc-dev
mailing list