[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 4 Apr 2017 13:18:58 +0100
From: Matt Redfearn <matt.redfearn@...tec.com>
To: "Jason A. Donenfeld" <Jason@...c4.com>
CC: Ralf Baechle <ralf@...ux-mips.org>, <linux-mips@...ux-mips.org>,
Paolo Bonzini <pbonzini@...hat.com>,
Marcin Nowakowski <marcin.nowakowski@...tec.com>,
Masanari Iida <standby24x7@...il.com>,
Chris Metcalf <cmetcalf@...lanox.com>,
LKML <linux-kernel@...r.kernel.org>,
James Hogan <james.hogan@...tec.com>,
Paul Burton <paul.burton@...tec.com>,
Ingo Molnar <mingo@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH] MIPS: IRQ Stack: Unwind IRQ stack onto task stack
Hi Jason,
On 04/04/17 12:58, Jason A. Donenfeld wrote:
> This indeed is useful. Out of curiosity, are other archs using a
> similar technique? In anycase,
>
> Acked-by: Jason A. Donenfeld <Jason@...c4.com>
Yes, at least x86 and ARM64 do the same thing (probably more)
x86 saves the previous stack pointer on the IRQ stack in
http://lxr.free-electrons.com/source/arch/x86/kernel/irq_32.c#L70
which is then unwound in
http://lxr.free-electrons.com/source/arch/x86/kernel/dumpstack.c#L51
ARM64 saves the task SP in
http://lxr.free-electrons.com/source/arch/arm64/kernel/entry.S#L249
And unwinds it in
http://lxr.free-electrons.com/source/arch/arm64/kernel/traps.c#L140
Thanks,
Matt
Powered by blists - more mailing lists