• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/mm/

Lines Matching refs:zonelist

848 static struct page *buffered_rmqueue(struct zonelist *zonelist,
881 zone_statistics(zonelist, zone);
1023 * zlc_setup - Setup for "zonelist cache". Uses cached zone data to
1026 * comments in mmzone.h. Reduces cache footprint of zonelist scans
1029 * If the zonelist cache is present in the passed in zonelist, then
1033 * If the zonelist cache is not available for this zonelist, does
1036 * If the fullzones BITMAP in the zonelist cache is stale (more than
1040 * first zone in the zonelist, on the theory that most allocations will
1044 static nodemask_t *zlc_setup(struct zonelist *zonelist, int alloc_flags)
1046 struct zonelist_cache *zlc; /* cached zonelist speedup info */
1049 zlc = zonelist->zlcache_ptr;
1065 * Given 'z' scanning a zonelist, run a couple of quick checks to see
1079 * into the second scan of the zonelist.
1081 * In the second scan we ignore this zonelist cache and exactly
1086 static int zlc_zone_worth_trying(struct zonelist *zonelist, struct zone **z,
1089 struct zonelist_cache *zlc; /* cached zonelist speedup info */
1090 int i; /* index of *z in zonelist zones */
1093 zlc = zonelist->zlcache_ptr;
1097 i = z - zonelist->zones;
1105 * Given 'z' scanning a zonelist, set the corresponding bit in
1109 static void zlc_mark_zone_full(struct zonelist *zonelist, struct zone **z)
1111 struct zonelist_cache *zlc; /* cached zonelist speedup info */
1112 int i; /* index of *z in zonelist zones */
1114 zlc = zonelist->zlcache_ptr;
1118 i = z - zonelist->zones;
1125 static nodemask_t *zlc_setup(struct zonelist *zonelist, int alloc_flags)
1130 static int zlc_zone_worth_trying(struct zonelist *zonelist, struct zone **z,
1136 static void zlc_mark_zone_full(struct zonelist *zonelist, struct zone **z)
1142 * get_page_from_freelist goes through the zonelist trying to allocate
1147 struct zonelist *zonelist, int alloc_flags)
1151 int classzone_idx = zone_idx(zonelist->zones[0]);
1159 * Scan zonelist, looking for a zone with enough free.
1162 z = zonelist->zones;
1166 !zlc_zone_worth_trying(zonelist, z, allowednodes))
1170 zone->zone_pgdat != zonelist->zones[0]->zone_pgdat))
1192 page = buffered_rmqueue(zonelist, zone, order, gfp_mask);
1197 zlc_mark_zone_full(zonelist, z);
1201 allowednodes = zlc_setup(zonelist, alloc_flags);
1208 /* Disable zlc cache for second zonelist scan */
1220 struct zonelist *zonelist)
1237 z = zonelist->zones; /* the list of zones suitable for gfp_mask */
1245 zonelist, ALLOC_WMARK_LOW|ALLOC_CPUSET);
1260 for (z = zonelist->zones; *z; z++)
1282 * Go through the zonelist again. Let __GFP_HIGH and allocations
1289 page = get_page_from_freelist(gfp_mask, order, zonelist, alloc_flags);
1300 /* go through the zonelist yet again, ignoring mins */
1302 zonelist, ALLOC_NO_WATERMARKS);
1325 did_some_progress = try_to_free_pages(zonelist->zones, gfp_mask);
1334 zonelist, alloc_flags);
1339 * Go through the zonelist yet one more time, keep
1345 zonelist, ALLOC_WMARK_HIGH|ALLOC_CPUSET);
1349 out_of_memory(zonelist, gfp_mask, order);
1454 struct zonelist *zonelist = pgdat->node_zonelists + offset;
1455 struct zone **zonep = zonelist->zones;
1630 * Add all populated zones of a node to the zonelist.
1633 struct zonelist *zonelist, int nr_zones, enum zone_type zone_type)
1644 zonelist->zones[nr_zones++] = zone;
1720 struct zonelist *zonelist;
1725 zonelist = pgdat->node_zonelists + i;
1726 zonelist->zones[0] = NULL;
1755 zonelist = pgdat->node_zonelists + i;
1756 for (j = 0; zonelist->zones[j] != NULL; j++);
1758 j = build_zonelists_node(NODE_DATA(node), zonelist, j, i);
1759 zonelist->zones[j] = NULL;
1764 /* Construct the zonelist performance cache - see further mmzone.h */
1770 struct zonelist *zonelist;
1774 zonelist = pgdat->node_zonelists + i;
1775 zonelist->zlcache_ptr = zlc = &zonelist->zlcache;
1777 for (z = zonelist->zones; *z; z++)
1778 zlc->z_to_n[z - zonelist->zones] = zone_to_nid(*z);
1791 struct zonelist *zonelist;
1793 zonelist = pgdat->node_zonelists + i;
1795 j = build_zonelists_node(pgdat, zonelist, 0, i);
1797 * Now we build the zonelist so that it contains the zones
1807 j = build_zonelists_node(NODE_DATA(node), zonelist, j, i);
1812 j = build_zonelists_node(NODE_DATA(node), zonelist, j, i);
1815 zonelist->zones[j] = NULL;
1819 /* non-NUMA variant of zonelist performance cache - just NULL zlcache_ptr */
1870 of zonelist */