Title: [8193] trunk/arch/blackfin/kernel/traps.c: task [#5818], BUS/SEGV signal, data address should be return in case it causes problems
Revision
8193
Author
bhsong
Date
2010-01-19 06:01:08 -0500 (Tue, 19 Jan 2010)

Log Message

task [#5818], BUS/SEGV signal, data address should be return in case it causes problems

Modified Paths

Diff

Modified: trunk/arch/blackfin/kernel/traps.c (8192 => 8193)


--- trunk/arch/blackfin/kernel/traps.c	2010-01-19 10:34:40 UTC (rev 8192)
+++ trunk/arch/blackfin/kernel/traps.c	2010-01-19 11:01:08 UTC (rev 8193)
@@ -648,7 +648,17 @@
 	{
 		info.si_signo = sig;
 		info.si_errno = 0;
-		info.si_addr = (void __user *)fp->pc;
+		switch (trapnr) {
+		case VEC_CPLB_VL:
+		case VEC_MISALI_D:
+		case VEC_CPLB_M:
+		case VEC_CPLB_MHIT:
+			info.si_addr = (void __user *)cpu_pda[cpu].dcplb_fault_addr;
+			break;
+		default:
+			info.si_addr = (void __user *)fp->pc;
+			break;
+		}
 		force_sig_info(sig, &info, current);
 	}
 
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to