zonelist
.zonelist = node_zonelist(first_memory_node, gfp_mask),
static inline struct zonelist *node_zonelist(int nid, gfp_t flags)
struct zonelist node_zonelists[MAX_ZONELISTS];
static inline struct zoneref *first_zones_zonelist(struct zonelist *zonelist,
return next_zones_zonelist(zonelist->_zonerefs,
struct zonelist *zonelist;
zonelist = &NODE_DATA(nid)->node_zonelists[ZONELIST_FALLBACK];
z = first_zones_zonelist(zonelist, ZONE_NORMAL, nodes);
struct zonelist;
struct zonelist *zonelist;
extern unsigned long try_to_free_pages(struct zonelist *zonelist, int order,
for_each_zone_zonelist_nodemask(zone, z, ac->zonelist,
for_each_zone_zonelist_nodemask(zone, z, ac->zonelist,
struct zonelist *zonelist;
zonelist = node_zonelist(nid, gfp_mask);
for_each_zone_zonelist_nodemask(zone, z, zonelist, gfp_zone(gfp_mask), nmask) {
struct zonelist *zonelist;
.zonelist = NULL,
struct zonelist *zonelist;
zonelist = &NODE_DATA(node)->node_zonelists[ZONELIST_FALLBACK];
z = first_zones_zonelist(zonelist, highest_zoneidx,
struct zonelist *zonelist;
zonelist = &pgdat->node_zonelists[listid];
for_each_zone_zonelist(zone, z, zonelist, zoneid)
if (!oc->zonelist)
for_each_zone_zonelist_nodemask(zone, z, oc->zonelist,
struct zonelist *zonelist = ac->zonelist;
for_each_zone_zonelist_nodemask(zone, z, zonelist, ac->highest_zoneidx,
.zonelist = ac->zonelist,
for_each_zone_zonelist_nodemask(zone, z, ac->zonelist,
progress = try_to_free_pages(ac->zonelist, order, gfp_mask,
for_each_zone_zonelist_nodemask(zone, z, ac->zonelist, highest_zoneidx,
for_each_zone_zonelist_nodemask(zone, z, ac->zonelist,
ac->preferred_zoneref = first_zones_zonelist(ac->zonelist,
struct zoneref *z = first_zones_zonelist(ac->zonelist,
ac->preferred_zoneref = first_zones_zonelist(ac->zonelist,
ac->zonelist = node_zonelist(preferred_nid, gfp_mask);
ac->preferred_zoneref = first_zones_zonelist(ac->zonelist,
struct zonelist *zonelist = node_zonelist(numa_node_id(), GFP_KERNEL);
for_each_zone_zonelist(zone, z, zonelist, offset) {
struct zonelist *zonelist;
zonelist = node_zonelist(nid, gfp_mask);
for_each_zone_zonelist_nodemask(zone, z, zonelist,
struct zonelist *zonelist;
zonelist = node_zonelist(mempolicy_slab_node(), pc->flags);
for_each_zone_zonelist(zone, z, zonelist, highest_zoneidx) {
struct zonelist *zonelist;
zonelist = node_zonelist(mempolicy_slab_node(), gfp);
for_each_zone_zonelist(zone, z, zonelist, highest_zoneidx) {
static void shrink_zones(struct zonelist *zonelist, struct scan_control *sc)
for_each_zone_zonelist_nodemask(zone, z, zonelist,
static unsigned long do_try_to_free_pages(struct zonelist *zonelist,
shrink_zones(zonelist, sc);
for_each_zone_zonelist_nodemask(zone, z, zonelist, sc->reclaim_idx,
static bool throttle_direct_reclaim(gfp_t gfp_mask, struct zonelist *zonelist,
for_each_zone_zonelist_nodemask(zone, z, zonelist,
unsigned long try_to_free_pages(struct zonelist *zonelist, int order,
if (throttle_direct_reclaim(sc.gfp_mask, zonelist, nodemask))
nr_reclaimed = do_try_to_free_pages(zonelist, &sc);
struct zonelist *zonelist = node_zonelist(numa_node_id(), sc.gfp_mask);
nr_reclaimed = do_try_to_free_pages(zonelist, &sc);
struct zonelist *zonelist = node_zonelist(numa_node_id(), sc.gfp_mask);
nr_reclaimed = do_try_to_free_pages(zonelist, &sc);