nfs: new subdir Documentation/filesystems/nfs
[safe/jmp/linux-2.6] / lib / bust_spinlocks.c
index 0ee968e..9681d54 100644 (file)
 #include <linux/tty.h>
 #include <linux/wait.h>
 #include <linux/vt_kern.h>
+#include <linux/console.h>
 
 
 void __attribute__((weak)) bust_spinlocks(int yes)
 {
        if (yes) {
-               oops_in_progress = 1;
+               ++oops_in_progress;
        } else {
-               int loglevel_save = console_loglevel;
 #ifdef CONFIG_VT
                unblank_screen();
 #endif
-               oops_in_progress = 0;
-               /*
-                * OK, the message is on the console.  Now we call printk()
-                * without oops_in_progress set so that printk() will give klogd
-                * and the blanked console a poke.  Hold onto your hats...
-                */
-               console_loglevel = 15;          /* NMI oopser may have shut the console up */
-               printk(" ");
-               console_loglevel = loglevel_save;
+               console_unblank();
+               if (--oops_in_progress == 0)
+                       wake_up_klogd();
        }
 }