mm-commits.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [merged] mm-page_alloc-fix-potential-false-positive-in-__zone_watermark_ok.patch removed from -mm tree
@ 2017-11-16 20:04 akpm
  0 siblings, 0 replies; only message in thread
From: akpm @ 2017-11-16 20:04 UTC (permalink / raw)
  To: hannes, iamjoonsoo.kim, mgorman, mm-commits, riel, rientjes, vbabka


The patch titled
     Subject: mm, page_alloc: fix potential false positive in __zone_watermark_ok
has been removed from the -mm tree.  Its filename was
     mm-page_alloc-fix-potential-false-positive-in-__zone_watermark_ok.patch

This patch was dropped because it was merged into mainline or a subsystem tree

------------------------------------------------------
From: Vlastimil Babka <vbabka@suse.cz>
Subject: mm, page_alloc: fix potential false positive in __zone_watermark_ok

Since 97a16fc82a7c ("mm, page_alloc: only enforce watermarks for order-0
allocations"), __zone_watermark_ok() check for high-order allocations will
shortcut per-migratetype free list checks for ALLOC_HARDER allocations,
and return true as long as there's free page of any migratetype.  The
intention is that ALLOC_HARDER can allocate from MIGRATE_HIGHATOMIC free
lists, while normal allocations can't.

However, as a side effect, the watermark check will then also return true
when there are pages only on the MIGRATE_ISOLATE list, or (prior to CMA
conversion to ZONE_MOVABLE) on the MIGRATE_CMA list.  Since the allocation
cannot actually obtain isolated pages, and might not be able to obtain CMA
pages, this can result in a false positive.

The condition should be rare and perhaps the outcome is not a fatal one. 
Still, it's better if the watermark check is correct.  There also
shouldn't be a performance tradeoff here.

Link: http://lkml.kernel.org/r/20171102125001.23708-1-vbabka@suse.cz
Fixes: 97a16fc82a7c ("mm, page_alloc: only enforce watermarks for order-0 allocations")
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Mel Gorman <mgorman@techsingularity.net>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 mm/page_alloc.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff -puN mm/page_alloc.c~mm-page_alloc-fix-potential-false-positive-in-__zone_watermark_ok mm/page_alloc.c
--- a/mm/page_alloc.c~mm-page_alloc-fix-potential-false-positive-in-__zone_watermark_ok
+++ a/mm/page_alloc.c
@@ -3041,9 +3041,6 @@ bool __zone_watermark_ok(struct zone *z,
 		if (!area->nr_free)
 			continue;
 
-		if (alloc_harder)
-			return true;

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-11-16 20:04 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-16 20:04 [merged] mm-page_alloc-fix-potential-false-positive-in-__zone_watermark_ok.patch removed from -mm tree akpm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).