[ofa-general] Re: [PATCH 2 of 3] mm_take_all_locks

Andrea Arcangeli andrea at qumranet.com
Thu Jun 5 09:44:21 PDT 2008


On Thu, Jun 05, 2008 at 09:15:41AM -0700, Linus Torvalds wrote:
> 
> Just a small comment fix.
> 
> On Thu, 5 Jun 2008, Andrea Arcangeli wrote:
> > +		/*
> > +		 * AS_MM_ALL_LOCKS can't change from under us because
> > +		 * we hold the global_mm_spinlock.
> 
> There's no global_mm_spinlock, you mean the 'mm_all_locks_mutex'.
> 
> (There was at least one other case where you had that comment issue).

From: Andrea Arcangeli <andrea at qumranet.com>

Indeed, I meant mm_all_locks_mutex, this will fix it, or if you prefer
a resubmit of the 2/3 let me know. Thanks!

Signed-off-by: Andrea Arcangeli <andrea at qumranet.com>
---

diff -r 082f312bc682 mm/mmap.c
--- a/mm/mmap.c	Thu Jun 05 17:30:17 2008 +0200
+++ b/mm/mmap.c	Thu Jun 05 18:40:23 2008 +0200
@@ -2263,7 +2263,7 @@ static void vm_lock_anon_vma(struct anon
 	if (!test_bit(0, (unsigned long *) &anon_vma->head.next)) {
 		/*
 		 * The LSB of head.next can't change from under us
-		 * because we hold the global_mm_spinlock.
+		 * because we hold the mm_all_locks_mutex.
 		 */
 		spin_lock(&anon_vma->lock);
 		/*
@@ -2286,11 +2286,11 @@ static void vm_lock_mapping(struct addre
 	if (!test_bit(AS_MM_ALL_LOCKS, &mapping->flags)) {
 		/*
 		 * AS_MM_ALL_LOCKS can't change from under us because
-		 * we hold the global_mm_spinlock.
+		 * we hold the mm_all_locks_mutex.
 		 *
 		 * Operations on ->flags have to be atomic because
 		 * even if AS_MM_ALL_LOCKS is stable thanks to the
-		 * global_mm_spinlock, there may be other cpus
+		 * mm_all_locks_mutex, there may be other cpus
 		 * changing other bitflags in parallel to us.
 		 */
 		if (test_and_set_bit(AS_MM_ALL_LOCKS, &mapping->flags))
@@ -2362,7 +2362,7 @@ static void vm_unlock_anon_vma(struct an
 	if (test_bit(0, (unsigned long *) &anon_vma->head.next)) {
 		/*
 		 * The LSB of head.next can't change to 0 from under
-		 * us because we hold the global_mm_spinlock.
+		 * us because we hold the mm_all_locks_mutex.
 		 *
 		 * We must however clear the bitflag before unlocking
 		 * the vma so the users using the anon_vma->head will
@@ -2384,7 +2384,7 @@ static void vm_unlock_mapping(struct add
 	if (test_bit(AS_MM_ALL_LOCKS, &mapping->flags)) {
 		/*
 		 * AS_MM_ALL_LOCKS can't change to 0 from under us
-		 * because we hold the global_mm_spinlock.
+		 * because we hold the mm_all_locks_mutex.
 		 */
 		spin_unlock(&mapping->i_mmap_lock);
 		if (!test_and_clear_bit(AS_MM_ALL_LOCKS,



More information about the general mailing list