mm: always lock the root (oldest) anon_vma
[linux-2.6-block.git] / include / linux / rmap.h
index 41fa6ddc6214729620e759d87131aee2081e2e4e..af43cb9a05067670f6b1385a87d2c3f2afee057a 100644 (file)
@@ -104,24 +104,24 @@ static inline void vma_lock_anon_vma(struct vm_area_struct *vma)
 {
        struct anon_vma *anon_vma = vma->anon_vma;
        if (anon_vma)
-               spin_lock(&anon_vma->lock);
+               spin_lock(&anon_vma->root->lock);
 }
 
 static inline void vma_unlock_anon_vma(struct vm_area_struct *vma)
 {
        struct anon_vma *anon_vma = vma->anon_vma;
        if (anon_vma)
-               spin_unlock(&anon_vma->lock);
+               spin_unlock(&anon_vma->root->lock);
 }
 
 static inline void anon_vma_lock(struct anon_vma *anon_vma)
 {
-       spin_lock(&anon_vma->lock);
+       spin_lock(&anon_vma->root->lock);
 }
 
 static inline void anon_vma_unlock(struct anon_vma *anon_vma)
 {
-       spin_unlock(&anon_vma->lock);
+       spin_unlock(&anon_vma->root->lock);
 }
 
 /*