Re: [PATCH v3 3/3] mm/vmscan: don't demote if there is not enough free memory in the lower memory tier

From: Gregory Price

Date: Fri Jan 09 2026 - 11:08:29 EST


> + for_each_node_mask(nid, allowed_mask) {
> + int z;
> + struct zone *zone;
> + struct pglist_data *pgdat = NODE_DATA(nid);
> +
> + for_each_managed_zone_pgdat(zone, pgdat, z, MAX_NR_ZONES - 1) {
> + if (zone_watermark_ok(zone, 0, min_wmark_pages(zone),
> + ZONE_MOVABLE, 0))

Why does this only check zone movable?

Also, would this also limit pressure-signal to invoke reclaim when
there is still swap space available? Should demotion not be a pressure
source for triggering harder reclaim?

~Gregory