Dan Carpenter reported the following bug The patch a486e00b8283: "mm: page_alloc: calculate classzone_idx once from the zonelist ref" from May 17, 2014, leads to the following static checker warning: mm/page_alloc.c:2543 __alloc_pages_slowpath() warn: we tested 'nodemask' before and it was 'false' mm/page_alloc.c 2537 * Find the true preferred zone if the allocation is unconstrained by 2538 * cpusets. 2539 */ 2540 if (!(alloc_flags & ALLOC_CPUSET) && !nodemask) { ^^^^^^^^^ Patch introduces this test. 2541 struct zoneref *preferred_zoneref; 2542 preferred_zoneref = first_zones_zonelist(zonelist, high_zoneidx, 2543 nodemask ? : &cpuset_current_mems_allowed, ^^^^^^^^ Patch introduces this test as well. 2544 &preferred_zone); 2545 classzone_idx = zonelist_zone_idx(preferred_zoneref); 2546 } This patch should resolve it and is a fix to the mmotm patch mm-page_alloc-calculate-classzone_idx-once-from-the-zonelist-ref Signed-off-by: Mel Gorman <mgorman@xxxxxxx> --- mm/page_alloc.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 0959b09..ebb947d 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -2590,8 +2590,7 @@ restart: if (!(alloc_flags & ALLOC_CPUSET) && !nodemask) { struct zoneref *preferred_zoneref; preferred_zoneref = first_zones_zonelist(zonelist, high_zoneidx, - nodemask ? : &cpuset_current_mems_allowed, - &preferred_zone); + NULL, &preferred_zone); classzone_idx = zonelist_zone_idx(preferred_zoneref); } -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>