[PATCH] mm/mmu_notifier: fix deadlock from typo vm_lock_anon_vma()

From: jglisse
Date: Tue Aug 08 2017 - 18:57:28 EST


From: JÃrÃme Glisse <jglisse@xxxxxxxxxx>

Fix typo introduced by 0c67e6038580e343bd5af12b7ac6548634f05f0d
which result in dead lock when mm_take_all_locks() is call (only
user being mmu_notifier at this time)

Signed-off-by: JÃrÃme Glisse <jglisse@xxxxxxxxxx>
Cc: Davidlohr Bueso <dbueso@xxxxxxx>
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
---
mm/mmap.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/mmap.c b/mm/mmap.c
index 74abfd382478..2d906a8f67ac 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -3314,7 +3314,7 @@ static DEFINE_MUTEX(mm_all_locks_mutex);

static void vm_lock_anon_vma(struct mm_struct *mm, struct anon_vma *anon_vma)
{
- if (!test_bit(0, (unsigned long *) &anon_vma->rb_root.rb_root.rb_node)) {
+ if (!test_bit(0, (unsigned long *) &anon_vma->root->rb_root.rb_root.rb_node)) {
/*
* The LSB of head.next can't change from under us
* because we hold the mm_all_locks_mutex.
--
2.13.4