Title: [8152] trunk/arch/blackfin/kernel/traps.c: Task [#5545], revise previous commit again, skip checking the MMs if their mmap_sem were held in decode_address()
Revision
8152
Author
gyang
Date
2010-01-13 22:38:43 -0500 (Wed, 13 Jan 2010)

Log Message

Task [#5545], revise previous commit again, skip checking the MMs if their mmap_sem were held in decode_address()

Modified Paths

Diff

Modified: trunk/arch/blackfin/kernel/traps.c (8151 => 8152)


--- trunk/arch/blackfin/kernel/traps.c	2010-01-13 13:28:45 UTC (rev 8151)
+++ trunk/arch/blackfin/kernel/traps.c	2010-01-14 03:38:43 UTC (rev 8152)
@@ -138,8 +138,9 @@
 		if (!mm)
 			continue;
 
-		while (!down_read_trylock(&mm->mmap_sem))
-			barrier();
+		if (!down_read_trylock(&mm->mmap_sem)) {
+			continue;
+		}
 
 		for (n = rb_first(&mm->mm_rb); n; n = rb_next(n)) {
 			struct vm_area_struct *vma;
@@ -196,7 +197,10 @@
 			mmput(mm);
 	}
 
-	/* we were unable to find this address anywhere */
+	/*
+	 * we were unable to find this address anywhere,
+	 * or some MMs were skipped because they were in use.
+	 */
 	sprintf(buf, "/* kernel dynamic memory */");
 
 done:
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to