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().

Reply via email to