Re: [PATCH v7 1/2] ARM: avoid tracers in soft_restart

From: Sebastian Capella
Date: Thu Mar 06 2014 - 18:46:11 EST


Quoting Sebastian Capella (2014-03-05 02:50:04)
> 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@xxxxxxxxxx>
> Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Cc: Will Deacon <will.deacon@xxxxxxx>
> Cc: Robin Holt <robin.m.holt@xxxxxxxxx>
> Cc: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
> Cc: Konstantin Khlebnikov <k.khlebnikov@xxxxxxxxxxx>
> Cc: Steven Capper <steve.capper@xxxxxxxxxx>
> Cc: Stephen Warren <swarren@xxxxxxxxxx>
> Cc: Tejun Heo <tj@xxxxxxxxxx>
> ---
> 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();
>
> /* Disable the L2 if we're the last man standing. */
> --
> 1.7.9.5
Hi,

I have not heard any feedback on this change, since V3 of the
patchset.

Is everyone ok with this as it is?

Thomas, thanks for proposing this, is this looking ok to you?

Thanks!

Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/