Re: [PATCH v2 18/18] mm, vmscan: use proper classzone_idx in should_continue_reclaim()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed 01-06-16 17:19:26, Vlastimil Babka wrote:
> On 06/01/2016 04:21 PM, Michal Hocko wrote:
> > On Tue 31-05-16 15:08:18, Vlastimil Babka wrote:
> > [...]
> >> @@ -2364,11 +2350,12 @@ static inline bool should_continue_reclaim(struct zone *zone,
> >>  }
> >>  
> >>  static bool shrink_zone(struct zone *zone, struct scan_control *sc,
> >> -			bool is_classzone)
> >> +			int classzone_idx)
> >>  {
> >>  	struct reclaim_state *reclaim_state = current->reclaim_state;
> >>  	unsigned long nr_reclaimed, nr_scanned;
> >>  	bool reclaimable = false;
> >> +	bool is_classzone = (classzone_idx == zone_idx(zone));
> >>  
> >>  	do {
> >>  		struct mem_cgroup *root = sc->target_mem_cgroup;
> >> @@ -2450,7 +2437,7 @@ static bool shrink_zone(struct zone *zone, struct scan_control *sc,
> >>  			reclaimable = true;
> >>  
> >>  	} while (should_continue_reclaim(zone, sc->nr_reclaimed - nr_reclaimed,
> >> -					 sc->nr_scanned - nr_scanned, sc));
> >> +			 sc->nr_scanned - nr_scanned, sc, classzone_idx));
> >>  
> >>  	return reclaimable;
> >>  }
> >> @@ -2580,7 +2567,7 @@ static void shrink_zones(struct zonelist *zonelist, struct scan_control *sc)
> >>  			/* need some check for avoid more shrink_zone() */
> >>  		}
> >>  
> >> -		shrink_zone(zone, sc, zone_idx(zone) == classzone_idx);
> >> +		shrink_zone(zone, sc, classzone_idx);
> > 
> > this should be is_classzone, right?
> 
> No, this is shrink_zones() context, not shrink_zone().

Ohh, right. They read to similar. I didn't spot anything else.

Acked-by: Michal Hocko <mhocko@xxxxxxxx>

-- 
Michal Hocko
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]