From 8bc798e9b553eea7d023f3cda2b201edb321033e Mon Sep 17 00:00:00 2001 From: Christoph Lameter Date: Wed, 1 Feb 2006 03:05:29 -0800 Subject: [PATCH] --- yaml --- r: 19368 b: refs/heads/master c: c84db23c6e587d3ab00a41c51fedf758e1f6ecd4 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/kernel/sysctl.c | 3 ++- trunk/mm/vmscan.c | 4 +++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 304440b1f93f..be949271b5bc 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 52a8363eae3872af15880292ff4e06d0fab36986 +refs/heads/master: c84db23c6e587d3ab00a41c51fedf758e1f6ecd4 diff --git a/trunk/kernel/sysctl.c b/trunk/kernel/sysctl.c index cb99a42f8b37..c74f03bc0144 100644 --- a/trunk/kernel/sysctl.c +++ b/trunk/kernel/sysctl.c @@ -878,7 +878,8 @@ static ctl_table vm_table[] = { .maxlen = sizeof(zone_reclaim_mode), .mode = 0644, .proc_handler = &proc_dointvec, - .strategy = &zero, + .strategy = &sysctl_intvec, + .extra1 = &zero, }, #endif { .ctl_name = 0 } diff --git a/trunk/mm/vmscan.c b/trunk/mm/vmscan.c index a29efb2c06c8..61ca0097c834 100644 --- a/trunk/mm/vmscan.c +++ b/trunk/mm/vmscan.c @@ -1636,14 +1636,16 @@ int zone_reclaim(struct zone *zone, gfp_t gfp_mask, unsigned int order) p->flags |= PF_MEMALLOC; reclaim_state.reclaimed_slab = 0; p->reclaim_state = &reclaim_state; + shrink_zone(zone, &sc); + p->reclaim_state = NULL; current->flags &= ~PF_MEMALLOC; if (sc.nr_reclaimed == 0) zone->last_unsuccessful_zone_reclaim = jiffies; - return sc.nr_reclaimed > nr_pages; + return sc.nr_reclaimed >= nr_pages; } #endif