Commit b16bc64d1aed40fb9cff9187061005b2a89b5d5d
Committed by
Linus Torvalds
1 parent
469340236a
Exists in
master
and in
20 other branches
[PATCH] move rmap BUG_ON outside DEBUG_VM
We have a persistent dribble of reports of this BUG triggering. Its extended diagnostics were recently made conditional on CONFIG_DEBUG_VM, which was a bad idea - we want to know about it. Signed-off-by: Dave Jones <davej@redhat.com> Cc: Nick Piggin <nickpiggin@yahoo.com.au> Cc: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Showing 1 changed file with 2 additions and 3 deletions Side-by-side Diff
mm/rmap.c
... | ... | @@ -576,15 +576,14 @@ |
576 | 576 | void page_remove_rmap(struct page *page) |
577 | 577 | { |
578 | 578 | if (atomic_add_negative(-1, &page->_mapcount)) { |
579 | -#ifdef CONFIG_DEBUG_VM | |
580 | 579 | if (unlikely(page_mapcount(page) < 0)) { |
581 | 580 | printk (KERN_EMERG "Eeek! page_mapcount(page) went negative! (%d)\n", page_mapcount(page)); |
582 | 581 | printk (KERN_EMERG " page->flags = %lx\n", page->flags); |
583 | 582 | printk (KERN_EMERG " page->count = %x\n", page_count(page)); |
584 | 583 | printk (KERN_EMERG " page->mapping = %p\n", page->mapping); |
584 | + BUG(); | |
585 | 585 | } |
586 | -#endif | |
587 | - BUG_ON(page_mapcount(page) < 0); | |
586 | + | |
588 | 587 | /* |
589 | 588 | * It would be tidy to reset the PageAnon mapping here, |
590 | 589 | * but that might overwrite a racing page_add_anon_rmap |