Messages in this thread | | | From | KOSAKI Motohiro <> | Subject | Re: [PATCH 2/4] Do not unconditionally treat zones that fail zone_reclaim() as full | Date | Wed, 10 Jun 2009 10:52:14 +0900 (JST) |
| |
> mark = zone->watermark[alloc_flags & ALLOC_WMARK_MASK]; > - if (!zone_watermark_ok(zone, order, mark, > - classzone_idx, alloc_flags)) { > - if (!zone_reclaim_mode || > - !zone_reclaim(zone, gfp_mask, order)) > + if (zone_watermark_ok(zone, order, mark, > + classzone_idx, alloc_flags)) > + goto try_this_zone; > + > + if (zone_reclaim_mode == 0) > + goto this_zone_full; > + > + ret = zone_reclaim(zone, gfp_mask, order); > + switch (ret) { > + case ZONE_RECLAIM_NOSCAN: > + /* did not scan */ > + goto try_next_zone; > + case ZONE_RECLAIM_FULL: > + /* scanned but unreclaimable */ > + goto this_zone_full; > + default: > + /* did we reclaim enough */ > + if (!zone_watermark_ok(zone, order, mark, > + classzone_idx, alloc_flags)) > goto this_zone_full;
ok, this version's change are minimal than previous. I'm not afraid this patch now. thanks.
Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
| |