x86/dumpstack: Add log_lvl to __show_regs()
[sfrench/cifs-2.6.git] / arch / x86 / kernel / process_32.c
index acfd6d2a0cbfdf1705437c18ca643aa423927fd7..4f2f54e1281c3f1d35d4166c8835f71bf7954f99 100644 (file)
@@ -56,7 +56,8 @@
 
 #include "process.h"
 
-void __show_regs(struct pt_regs *regs, enum show_regs_mode mode)
+void __show_regs(struct pt_regs *regs, enum show_regs_mode mode,
+                const char *log_lvl)
 {
        unsigned long cr0 = 0L, cr2 = 0L, cr3 = 0L, cr4 = 0L;
        unsigned long d0, d1, d2, d3, d6, d7;
@@ -67,14 +68,14 @@ void __show_regs(struct pt_regs *regs, enum show_regs_mode mode)
        else
                savesegment(gs, gs);
 
-       show_ip(regs, KERN_DEFAULT);
+       show_ip(regs, log_lvl);
 
-       printk(KERN_DEFAULT "EAX: %08lx EBX: %08lx ECX: %08lx EDX: %08lx\n",
-               regs->ax, regs->bx, regs->cx, regs->dx);
-       printk(KERN_DEFAULT "ESI: %08lx EDI: %08lx EBP: %08lx ESP: %08lx\n",
-               regs->si, regs->di, regs->bp, regs->sp);
-       printk(KERN_DEFAULT "DS: %04x ES: %04x FS: %04x GS: %04x SS: %04x EFLAGS: %08lx\n",
-              (u16)regs->ds, (u16)regs->es, (u16)regs->fs, gs, regs->ss, regs->flags);
+       printk("%sEAX: %08lx EBX: %08lx ECX: %08lx EDX: %08lx\n",
+               log_lvl, regs->ax, regs->bx, regs->cx, regs->dx);
+       printk("%sESI: %08lx EDI: %08lx EBP: %08lx ESP: %08lx\n",
+               log_lvl, regs->si, regs->di, regs->bp, regs->sp);
+       printk("%sDS: %04x ES: %04x FS: %04x GS: %04x SS: %04x EFLAGS: %08lx\n",
+              log_lvl, (u16)regs->ds, (u16)regs->es, (u16)regs->fs, gs, regs->ss, regs->flags);
 
        if (mode != SHOW_REGS_ALL)
                return;
@@ -83,8 +84,8 @@ void __show_regs(struct pt_regs *regs, enum show_regs_mode mode)
        cr2 = read_cr2();
        cr3 = __read_cr3();
        cr4 = __read_cr4();
-       printk(KERN_DEFAULT "CR0: %08lx CR2: %08lx CR3: %08lx CR4: %08lx\n",
-                       cr0, cr2, cr3, cr4);
+       printk("%sCR0: %08lx CR2: %08lx CR3: %08lx CR4: %08lx\n",
+               log_lvl, cr0, cr2, cr3, cr4);
 
        get_debugreg(d0, 0);
        get_debugreg(d1, 1);
@@ -98,10 +99,10 @@ void __show_regs(struct pt_regs *regs, enum show_regs_mode mode)
            (d6 == DR6_RESERVED) && (d7 == 0x400))
                return;
 
-       printk(KERN_DEFAULT "DR0: %08lx DR1: %08lx DR2: %08lx DR3: %08lx\n",
-                       d0, d1, d2, d3);
-       printk(KERN_DEFAULT "DR6: %08lx DR7: %08lx\n",
-                       d6, d7);
+       printk("%sDR0: %08lx DR1: %08lx DR2: %08lx DR3: %08lx\n",
+               log_lvl, d0, d1, d2, d3);
+       printk("%sDR6: %08lx DR7: %08lx\n",
+               log_lvl, d6, d7);
 }
 
 void release_thread(struct task_struct *dead_task)