patch-2.1.18 linux/arch/alpha/mm/fault.c

Next file: linux/arch/i386/kernel/bios32.c
Previous file: linux/arch/alpha/mm/extable.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.17/linux/arch/alpha/mm/fault.c linux/arch/alpha/mm/fault.c
@@ -35,7 +35,7 @@
 }
 #endif
 
-extern void die_if_kernel(char *,struct pt_regs *,long);
+extern void die_if_kernel(char *,struct pt_regs *,long, unsigned long *);
 
 /*
  * This routine handles page faults.  It determines the address,
@@ -121,7 +121,7 @@
 		printk("%s: memory violation at pc=%08lx ra=%08lx "
 		       "(bad address = %08lx)\n",
 			tsk->comm, regs->pc, regs->r26, address);
-		die_if_kernel("oops", regs, cause);
+		die_if_kernel("oops", regs, cause, (unsigned long*)regs - 16);
 		force_sig(SIGSEGV, tsk);
 		return;
 	}
@@ -131,6 +131,6 @@
  */
 	printk(KERN_ALERT "Unable to handle kernel paging request at "
 	       "virtual address %016lx\n", address);
-	die_if_kernel("Oops", regs, cause);
+	die_if_kernel("Oops", regs, cause, (unsigned long*)regs - 16);
 	do_exit(SIGKILL);
 }

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov