uml: kernel segfaults should dump proper registers
authorJeff Dike <jdike@addtoit.com>
Sun, 6 May 2007 21:51:25 +0000 (14:51 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Mon, 7 May 2007 19:13:02 +0000 (12:13 -0700)
commit377fad3acbb7e94ab9942a74e0d9ede8eeb2f039
tree0bf8046bb1fa6ccb51df76b56819dee6b6d7487b
parent5d86456d3852cb95a38d2b23fe01cede54984ba5
uml: kernel segfaults should dump proper registers

If there's a segfault inside the kernel, we want a dump of the registers at
the point of the segfault, not the registers at the point of calling panic or
the last userspace registers.

sig_handler_common_skas now uses a static register set in the case of a
SIGSEGV to avoid messing up the process registers if the segfault turns out to
be non-fatal.

The architecture sigcontext-to-pt_regs copying code was repurposed to copy
data out of the SEGV stack frame.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/um/include/common-offsets.h
arch/um/include/kern_util.h
arch/um/kernel/trap.c
arch/um/os-Linux/skas/trap.c
arch/um/sys-i386/signal.c
arch/um/sys-x86_64/signal.c