xtensa: keep exception/interrupt stack continuous
authorMax Filippov <jcmvbkbc@gmail.com>
Thu, 25 Jun 2015 20:03:29 +0000 (23:03 +0300)
committerMax Filippov <jcmvbkbc@gmail.com>
Mon, 17 Aug 2015 04:32:48 +0000 (07:32 +0300)
Restore original a0 in the kernel exception stack frame. This way it
looks like the frame that got interrupt/exception did alloca (copy a0 and
a1 spilled under old stack to the new location as well) to save registers
and then did a call to handler.
The point where interrupt/exception was taken is not in the stack chain,
only in pt_regs (call4 from that address can be simulated to keep it in
the stack trace).

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
arch/xtensa/kernel/entry.S

Simple merge