]> git.baikalelectronics.ru Git - kernel.git/commit
mm, page_alloc: defer debugging checks of freed pages until a PCP drain
authorMel Gorman <mgorman@techsingularity.net>
Fri, 20 May 2016 00:14:32 +0000 (17:14 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 20 May 2016 02:12:14 +0000 (19:12 -0700)
commita3a61c1be2269a408bcc738d2582a149f7ae9fd5
tree73bed79bf4da794881cb5b9da99a017bdc2f3a99
parenteb093e3e1ac2f9cf9a629a5b6d329e1c122ee526
mm, page_alloc: defer debugging checks of freed pages until a PCP drain

Every page free checks a number of page fields for validity.  This
catches premature frees and corruptions but it is also expensive.  This
patch weakens the debugging check by checking PCP pages at the time they
are drained from the PCP list.  This will trigger the bug but the site
that freed the corrupt page will be lost.  To get the full context, a
kernel rebuild with DEBUG_VM is necessary.

[akpm@linux-foundation.org: fix build]
Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/page_alloc.c