summaryrefslogtreecommitdiffstats
path: root/mm/rmap.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-04-07 11:17:34 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-04-07 11:17:34 +0200
commitb7a4abb67416aa07cd65446dd39e64525ccfe8e5 (patch)
tree8f5b0f9ffb617622944b5e6368473f91e3efeaa4 /mm/rmap.c
parentd30323f810e4da94eb75cf4bfe5165b9518c64df (diff)
parentf22e6e847115abc3a0e2ad7bb18d243d42275af1 (diff)
downloadop-kernel-dev-b7a4abb67416aa07cd65446dd39e64525ccfe8e5.zip
op-kernel-dev-b7a4abb67416aa07cd65446dd39e64525ccfe8e5.tar.gz
Merge 4.0-rc7 into usb-next
We want the fixes in here, and to help resolve merge issues. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'mm/rmap.c')
-rw-r--r--mm/rmap.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/mm/rmap.c b/mm/rmap.c
index 5e3e090..c161a14 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -287,6 +287,13 @@ int anon_vma_clone(struct vm_area_struct *dst, struct vm_area_struct *src)
return 0;
enomem_failure:
+ /*
+ * dst->anon_vma is dropped here otherwise its degree can be incorrectly
+ * decremented in unlink_anon_vmas().
+ * We can safely do this because callers of anon_vma_clone() don't care
+ * about dst->anon_vma if anon_vma_clone() failed.
+ */
+ dst->anon_vma = NULL;
unlink_anon_vmas(dst);
return -ENOMEM;
}
OpenPOWER on IntegriCloud