Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 258961
b: refs/heads/master
c: 76d3fbf
h: refs/heads/master
i:
  258959: 0f14f8d
v: v3
  • Loading branch information
Mel Gorman authored and Linus Torvalds committed Jul 26, 2011
1 parent b79cf0b commit 215219b
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: cd38b115d5ad79b0100ac6daa103c4fe2c50a913
refs/heads/master: 76d3fbf8fbf6cc78ceb63549e0e0c5bc8a88f838
23 changes: 23 additions & 0 deletions trunk/mm/page_alloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1616,6 +1616,21 @@ static void zlc_mark_zone_full(struct zonelist *zonelist, struct zoneref *z)
set_bit(i, zlc->fullzones);
}

/*
* clear all zones full, called after direct reclaim makes progress so that
* a zone that was recently full is not skipped over for up to a second
*/
static void zlc_clear_zones_full(struct zonelist *zonelist)
{
struct zonelist_cache *zlc; /* cached zonelist speedup info */

zlc = zonelist->zlcache_ptr;
if (!zlc)
return;

bitmap_zero(zlc->fullzones, MAX_ZONES_PER_ZONELIST);
}

#else /* CONFIG_NUMA */

static nodemask_t *zlc_setup(struct zonelist *zonelist, int alloc_flags)
Expand All @@ -1632,6 +1647,10 @@ static int zlc_zone_worth_trying(struct zonelist *zonelist, struct zoneref *z,
static void zlc_mark_zone_full(struct zonelist *zonelist, struct zoneref *z)
{
}

static void zlc_clear_zones_full(struct zonelist *zonelist)
{
}
#endif /* CONFIG_NUMA */

/*
Expand Down Expand Up @@ -1963,6 +1982,10 @@ __alloc_pages_direct_reclaim(gfp_t gfp_mask, unsigned int order,
if (unlikely(!(*did_some_progress)))
return NULL;

/* After successful reclaim, reconsider all zones for allocation */
if (NUMA_BUILD)
zlc_clear_zones_full(zonelist);

retry:
page = get_page_from_freelist(gfp_mask, nodemask, order,
zonelist, high_zoneidx,
Expand Down

0 comments on commit 215219b

Please sign in to comment.