Commit 77f2878b4f78c0b29c4a2580665a446c77901152
Committed by
Linus Torvalds
1 parent
35d5d08a08
Exists in
master
and in
7 other branches
oprofile: fix oops on x86 32-bit
x86 32-bit isn't saving the stack pointer to pt_regs->esp when an interrupt occurs. Signed-off-by: Jan Blunck <jblunck@suse.de> Tested-by: Robert Fitzsimons <robfitz@273k.net> Cc: Andi Kleen <ak@suse.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Philippe Elie <phil.el@wanadoo.fr> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff
include/asm-x86/ptrace.h
... | ... | @@ -60,7 +60,7 @@ |
60 | 60 | |
61 | 61 | #define instruction_pointer(regs) ((regs)->eip) |
62 | 62 | #define frame_pointer(regs) ((regs)->ebp) |
63 | -#define stack_pointer(regs) ((regs)->esp) | |
63 | +#define stack_pointer(regs) ((unsigned long)(regs)) | |
64 | 64 | #define regs_return_value(regs) ((regs)->eax) |
65 | 65 | |
66 | 66 | extern unsigned long profile_pc(struct pt_regs *regs); |