patch-2.4.0-test11 linux/arch/i386/mm/fault.c
Next file: linux/arch/ia64/config.in
Previous file: linux/arch/i386/lib/mmx.c
Back to the patch index
Back to the overall index
- Lines: 29
- Date:
Sat Nov 11 19:01:11 2000
- Orig file:
v2.4.0-test10/linux/arch/i386/mm/fault.c
- Orig date:
Tue Oct 31 12:42:26 2000
diff -u --recursive --new-file v2.4.0-test10/linux/arch/i386/mm/fault.c linux/arch/i386/mm/fault.c
@@ -77,6 +77,19 @@
return 0;
}
+extern spinlock_t console_lock, timerlist_lock;
+
+/*
+ * Unlock any spinlocks which will prevent us from getting the
+ * message out (timerlist_lock is aquired through the
+ * console unblank code)
+ */
+void bust_spinlocks(void)
+{
+ spin_lock_init(&console_lock);
+ spin_lock_init(&timerlist_lock);
+}
+
asmlinkage void do_invalid_op(struct pt_regs *, unsigned long);
extern unsigned long idt;
@@ -250,6 +263,8 @@
* Oops. The kernel tried to access some bad page. We'll have to
* terminate things with extreme prejudice.
*/
+
+ bust_spinlocks();
if (address < PAGE_SIZE)
printk(KERN_ALERT "Unable to handle kernel NULL pointer dereference");
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)