xtensa: always use correct stack pointer for stack traces
authorJohannes Weiner <jw@emlix.com>
Mon, 11 May 2009 13:43:33 +0000 (15:43 +0200)
committerChris Zankel <chris@zankel.net>
Tue, 12 May 2009 04:59:43 +0000 (21:59 -0700)
commit586411dcd1935f91796d5e8a29aa3cfdf01a01f4
treefac1b05ad8c5a708080251b17d4a3fc0b9018c4f
parent7dbe5c542464a511f0ea6a14e3ff08874d7e21d5
xtensa: always use correct stack pointer for stack traces

Commit '28a0ce7 xtensa: use correct stack pointer for stack traces'
changed the stack tracer from always reading the stack pointer
register to always using the saved value in the task descriptor.

The author was too dense to consider the fact that the saved stack
value is stale for a running process und thus unusable for 'current'.

What we do now is to use the stack pointer register (a1) for when the
task is unknown - we can't help it then - or when the task is
'current'.  For everything else use the saved stack pointer value
contained in the task descriptor.

Signed-off-by: Johannes Weiner <jw@emlix.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
arch/xtensa/kernel/traps.c