On Sun 17-03-13 13:04:15, Mel Gorman wrote: > Currently kswapd checks if it should start writepage as it shrinks > each zone without taking into consideration if the zone is balanced or > not. This is not wrong as such but it does not make much sense either. > This patch checks once per priority if kswapd should be writing pages.
Except it is not once per priority strictly speaking... It doesn't make any difference though. > Signed-off-by: Mel Gorman <[email protected]> Reviewed-by: Michal Hocko <[email protected]> > --- > mm/vmscan.c | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index 84375b2..8c66e5a 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -2804,6 +2804,13 @@ static unsigned long balance_pgdat(pg_data_t *pgdat, > int order, > } > > /* > + * If we're getting trouble reclaiming, start doing writepage > + * even in laptop mode. > + */ > + if (sc.priority < DEF_PRIORITY - 2) > + sc.may_writepage = 1; > + > + /* > * Now scan the zone in the dma->highmem direction, stopping > * at the last zone which needs scanning. > * > @@ -2876,13 +2883,6 @@ static unsigned long balance_pgdat(pg_data_t *pgdat, > int order, > nr_to_reclaim += sc.nr_to_reclaim; > } > > - /* > - * If we're getting trouble reclaiming, start doing > - * writepage even in laptop mode. > - */ > - if (sc.priority < DEF_PRIORITY - 2) > - sc.may_writepage = 1; > - > if (zone->all_unreclaimable) { > if (end_zone && end_zone == i) > end_zone--; > -- > 1.8.1.4 > -- Michal Hocko SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

