aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/rmap.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/mm/rmap.c b/mm/rmap.c
index 9c3e77396d1a..83bfafabb47b 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -1564,10 +1564,9 @@ void __put_anon_vma(struct anon_vma *anon_vma)
1564{ 1564{
1565 struct anon_vma *root = anon_vma->root; 1565 struct anon_vma *root = anon_vma->root;
1566 1566
1567 anon_vma_free(anon_vma);
1567 if (root != anon_vma && atomic_dec_and_test(&root->refcount)) 1568 if (root != anon_vma && atomic_dec_and_test(&root->refcount))
1568 anon_vma_free(root); 1569 anon_vma_free(root);
1569
1570 anon_vma_free(anon_vma);
1571} 1570}
1572 1571
1573static struct anon_vma *rmap_walk_anon_lock(struct page *page, 1572static struct anon_vma *rmap_walk_anon_lock(struct page *page,