diff options
Diffstat (limited to 'lib/bust_spinlocks.c')
| -rw-r--r-- | lib/bust_spinlocks.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/bust_spinlocks.c b/lib/bust_spinlocks.c index accb3565816..f8e0e536739 100644 --- a/lib/bust_spinlocks.c +++ b/lib/bust_spinlocks.c @@ -8,23 +8,24 @@ */ #include <linux/kernel.h> +#include <linux/printk.h> #include <linux/spinlock.h> #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 { #ifdef CONFIG_VT unblank_screen(); #endif - oops_in_progress = 0; - wake_up_klogd(); + console_unblank(); + if (--oops_in_progress == 0) + wake_up_klogd(); } } - - |
