Title: [8280] trunk/arch/blackfin/kernel/traps.c: Task [#5545], restore the code that reverted by my previsous commit
Revision
8280
Author
gyang
Date
2010-02-08 06:51:30 -0500 (Mon, 08 Feb 2010)

Log Message

Task [#5545], restore the code that reverted by my previsous commit

Modified Paths

Diff

Modified: trunk/arch/blackfin/kernel/traps.c (8279 => 8280)


--- trunk/arch/blackfin/kernel/traps.c	2010-02-08 11:38:42 UTC (rev 8279)
+++ trunk/arch/blackfin/kernel/traps.c	2010-02-08 11:51:30 UTC (rev 8280)
@@ -184,7 +184,6 @@
 						name, vma->vm_start, vma->vm_end);
 
 				up_read(&mm->mmap_sem);
-
 				if (!in_atomic)
 					mmput(mm);
 
@@ -194,8 +193,8 @@
 				goto done;
 			}
 		}
+
 		up_read(&mm->mmap_sem);
-
 		if (!in_atomic)
 			mmput(mm);
 	}
@@ -261,9 +260,7 @@
 #ifdef CONFIG_DEBUG_BFIN_HWTRACE_ON
 	int j;
 #endif
-#ifdef CONFIG_DEBUG_HUNT_FOR_ZERO
 	unsigned int cpu = raw_smp_processor_id();
-#endif
 	const char *strerror = NULL;
 	int sig = 0;
 	siginfo_t info;
@@ -652,7 +649,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