patch-2.1.87 linux/arch/m68k/mm/fault.c

Next file: linux/arch/m68k/mm/init.c
Previous file: linux/arch/m68k/mm/Makefile
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.86/linux/arch/m68k/mm/fault.c linux/arch/m68k/mm/fault.c
@@ -101,11 +101,15 @@
 bad_area:
 	up(&mm->mmap_sem);
 
-	/* Are we prepared to handle this fault?  */
+	/* User mode accesses just cause a SIGSEGV */
+	if (user_mode(regs)) {
+		force_sig (SIGSEGV, tsk);
+		return 1;
+	}
+
+	/* Are we prepared to handle this kernel fault?  */
 	if ((fixup = search_exception_table(regs->pc)) != 0) {
 		struct pt_regs *tregs;
-		printk(KERN_DEBUG "%s: Exception at [<%lx>] (%lx)\n",
-		       current->comm, regs->pc, fixup);
 		/* Create a new four word stack frame, discarding the old
 		   one.  */
 		regs->stkadj = frame_extra_sizes[regs->format];
@@ -115,12 +119,6 @@
 		tregs->pc = fixup;
 		tregs->sr = regs->sr;
 		return -1;
-	}
-
-	if (user_mode(regs)) {
-		/* User memory access */
-		force_sig (SIGSEGV, tsk);
-		return 1;
 	}
 
 /*

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