x86: Merge show_regs()
authorBrian Gerst <brgerst@gmail.com>
Wed, 13 Jan 2010 15:45:55 +0000 (10:45 -0500)
committerH. Peter Anvin <hpa@zytor.com>
Wed, 13 Jan 2010 17:23:15 +0000 (09:23 -0800)
Using kernel_stack_pointer() allows 32-bit and 64-bit versions to
be merged.  This is more correct for 64-bit, since the old %rsp is
always saved on the stack.

Signed-off-by: Brian Gerst <brgerst@gmail.com>
LKML-Reference: <1263397555-27695-1-git-send-email-brgerst@gmail.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/kernel/process.c
arch/x86/kernel/process_32.c
arch/x86/kernel/process_64.c

index 98c2cdeb599e71ecf2f26f177a8bc6f64cad4cc8..cf1e04b2ad659b234ef0b364f56e3e5963f6c466 100644 (file)
@@ -92,6 +92,13 @@ void exit_thread(void)
        }
 }
 
+void show_regs(struct pt_regs *regs)
+{
+       show_registers(regs);
+       show_trace(NULL, regs, (unsigned long *)kernel_stack_pointer(regs),
+                  regs->bp);
+}
+
 void show_regs_common(void)
 {
        const char *board, *product;
index 9c517b5858f0943065260484ff2f151846197b13..fe6a34e42bdeb12678b2a8f6e0f096792207ddcb 100644 (file)
@@ -174,12 +174,6 @@ void __show_regs(struct pt_regs *regs, int all)
                        d6, d7);
 }
 
-void show_regs(struct pt_regs *regs)
-{
-       show_registers(regs);
-       show_trace(NULL, regs, &regs->sp, regs->bp);
-}
-
 void release_thread(struct task_struct *dead_task)
 {
        BUG_ON(dead_task->mm);
index 52fbd0c601987bed689e40693c14e6c38c4f687d..418f860880a292cd165fe5e9139c956779afdda3 100644 (file)
@@ -211,12 +211,6 @@ void __show_regs(struct pt_regs *regs, int all)
        printk(KERN_INFO "DR3: %016lx DR6: %016lx DR7: %016lx\n", d3, d6, d7);
 }
 
-void show_regs(struct pt_regs *regs)
-{
-       show_registers(regs);
-       show_trace(NULL, regs, (void *)(regs + 1), regs->bp);
-}
-
 void release_thread(struct task_struct *dead_task)
 {
        if (dead_task->mm) {