]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - queue-4.4/mm-rmap-replace-bug_on-anon_vma-degree-with-vm_warn_on.patch
4.4-stable patches
[thirdparty/kernel/stable-queue.git] / queue-4.4 / mm-rmap-replace-bug_on-anon_vma-degree-with-vm_warn_on.patch
CommitLineData
8582e711
GKH
1From e4c5800a3991f0c6a766983535dfc10d51802cf6 Mon Sep 17 00:00:00 2001
2From: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
3Date: Thu, 19 May 2016 17:11:46 -0700
4Subject: mm/rmap: replace BUG_ON(anon_vma->degree) with VM_WARN_ON
5
6From: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
7
8commit e4c5800a3991f0c6a766983535dfc10d51802cf6 upstream.
9
10This check effectively catches anon vma hierarchy inconsistence and some
11vma corruptions. It was effective for catching corner cases in anon vma
12reusing logic. For now this code seems stable so check could be hidden
13under CONFIG_DEBUG_VM and replaced with WARN because it's not so fatal.
14
15Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
16Suggested-by: Vasily Averin <vvs@virtuozzo.com>
17Acked-by: Vlastimil Babka <vbabka@suse.cz>
18Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
19Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
20Signed-off-by: Arnd Bergmann <arnd@arndb.de>
21Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
22
23---
24 mm/rmap.c | 2 +-
25 1 file changed, 1 insertion(+), 1 deletion(-)
26
27--- a/mm/rmap.c
28+++ b/mm/rmap.c
29@@ -408,7 +408,7 @@ void unlink_anon_vmas(struct vm_area_str
30 list_for_each_entry_safe(avc, next, &vma->anon_vma_chain, same_vma) {
31 struct anon_vma *anon_vma = avc->anon_vma;
32
33- BUG_ON(anon_vma->degree);
34+ VM_WARN_ON(anon_vma->degree);
35 put_anon_vma(anon_vma);
36
37 list_del(&avc->same_vma);