[PATCH v4 1/2] ARM: avoid tracers in soft_restart
Sebastian Capella
sebastian.capella at linaro.org
Wed Feb 26 19:18:36 EST 2014
Quoting Russell King - ARM Linux (2014-02-26 15:37:44)
> On Wed, Feb 26, 2014 at 11:10:56AM -0800, Sebastian Capella wrote:
> > Use of tracers in local_irq_disable is causes recursive aborts when
> > called with irqs disabled and using a temporary stack (hibernation).
> > Replace local_irq_disable with raw_local_irq_disable instead to
> > avoid tracers.
> >
> > Signed-off-by: Sebastian Capella <sebastian.capella at linaro.org>
> > Cc: Russell King <linux at arm.linux.org.uk>
> > Cc: Andrew Morton <akpm at linux-foundation.org>
> > Cc: Thomas Gleixner <tglx at linutronix.de>
> > Cc: Will Deacon <will.deacon at arm.com>
> > Cc: Robin Holt <robin.m.holt at gmail.com>
> > Cc: Lorenzo Pieralisi <lorenzo.pieralisi at arm.com>
> > ---
> > arch/arm/kernel/process.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
> > index 92f7b15..f58b723 100644
> > --- a/arch/arm/kernel/process.c
> > +++ b/arch/arm/kernel/process.c
> > @@ -100,7 +100,7 @@ void soft_restart(unsigned long addr)
> > u64 *stack = soft_restart_stack + ARRAY_SIZE(soft_restart_stack);
> >
> > /* Disable interrupts first */
> > - local_irq_disable();
> > + raw_local_irq_disable();
> > local_fiq_disable();
>
> Great, I'm happy with this now. I assume that the plan is to submit this
> to my patch system when everyone's given their fill of acks?
Thanks Russell!
I'll look into how to send it to your patch system and wait for people
to respond.
Sebastian Capella
More information about the linux-arm-kernel
mailing list