x86: use kernel_stack_pointer() in process_32.c
The way to obtain a kernel-mode stack pointer from a struct pt_regs in 32-bit mode is "subtle": the stack doesn't actually contain the stack pointer, but rather the location where it would have been marks the actual previous stack frame. For clarity, use kernel_stack_pointer() instead of coding this weirdness explicitly. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This commit is contained in:
parent
d93a8f829f
commit
def3c5d0a3
|
@ -134,7 +134,7 @@ void __show_regs(struct pt_regs *regs, int all)
|
|||
ss = regs->ss & 0xffff;
|
||||
gs = get_user_gs(regs);
|
||||
} else {
|
||||
sp = (unsigned long) (®s->sp);
|
||||
sp = kernel_stack_pointer(regs);
|
||||
savesegment(ss, ss);
|
||||
savesegment(gs, gs);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue