Re: [patch 2/2] mm: vmscan: drop nr_force_scan[] from get_scan_count

From: Minchan Kim
Date: Fri Aug 12 2011 - 03:04:15 EST


On Fri, Aug 12, 2011 at 3:58 PM, Johannes Weiner <jweiner@xxxxxxxxxx> wrote:
> On Fri, Aug 12, 2011 at 08:44:34AM +0900, Minchan Kim wrote:
>> On Fri, Aug 12, 2011 at 5:31 AM, Johannes Weiner <jweiner@xxxxxxxxxx> wrote:
>> > The nr_force_scan[] tuple holds the effective scan numbers for anon
>> > and file pages in case the situation called for a forced scan and the
>> > regularly calculated scan numbers turned out zero.
>> >
>> > However, the effective scan number can always be assumed to be
>> > SWAP_CLUSTER_MAX right before the division into anon and file. ÂThe
>> > numerators and denominator are properly set up for all cases, be it
>> > force scan for just file, just anon, or both, to do the right thing.
>> >
>> > Signed-off-by: Johannes Weiner <jweiner@xxxxxxxxxx>
>>
>> Reviewed-by: Minchan Kim <minchan.kim@xxxxxxxxx>
>
> Thanks.
>
>> There is a nitpick at below.
>
>> > @@ -1927,20 +1917,10 @@ out:
>> > Â Â Â Â Â Â Â Âscan = zone_nr_lru_pages(zone, sc, l);
>> > Â Â Â Â Â Â Â Âif (priority || noswap) {
>> > Â Â Â Â Â Â Â Â Â Â Â Âscan >>= priority;
>> > + Â Â Â Â Â Â Â Â Â Â Â if (!scan && force_scan)
>> > + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â scan = SWAP_CLUSTER_MAX;
>> > Â Â Â Â Â Â Â Â Â Â Â Âscan = div64_u64(scan * fraction[file], denominator);
>> > Â Â Â Â Â Â Â Â}
>> > -
>> > - Â Â Â Â Â Â Â /*
>> > - Â Â Â Â Â Â Â Â* If zone is small or memcg is small, nr[l] can be 0.
>> > - Â Â Â Â Â Â Â Â* This results no-scan on this priority and priority drop down.
>> > - Â Â Â Â Â Â Â Â* For global direct reclaim, it can visit next zone and tend
>> > - Â Â Â Â Â Â Â Â* not to have problems. For global kswapd, it's for zone
>> > - Â Â Â Â Â Â Â Â* balancing and it need to scan a small amounts. When using
>> > - Â Â Â Â Â Â Â Â* memcg, priority drop can cause big latency. So, it's better
>> > - Â Â Â Â Â Â Â Â* to scan small amount. See may_noscan above.
>> > - Â Â Â Â Â Â Â Â*/
>>
>> Please move this comment with tidy-up at where making force_scan true.
>> Of course, we can find it by git log[246e87a9393] but as I looked the
>> git log, it explain this comment indirectly and it's not
>> understandable to newbies. I think this comment is more understandable
>> than changelog in git.
>
> I guess you are right, I am a bit overeager when deleting comments.
> How is this?
>
> ---
> From: Johannes Weiner <jweiner@xxxxxxxxxx>
> Subject: [patch] mm: vmscan: drop nr_force_scan[] from get_scan_count
>
> The nr_force_scan[] tuple holds the effective scan numbers for anon
> and file pages in case the situation called for a forced scan and the
> regularly calculated scan numbers turned out zero.
>
> However, the effective scan number can always be assumed to be
> SWAP_CLUSTER_MAX right before the division into anon and file. ÂThe
> numerators and denominator are properly set up for all cases, be it
> force scan for just file, just anon, or both, to do the right thing.
>
> Signed-off-by: Johannes Weiner <jweiner@xxxxxxxxxx>
Reviewed-by: Minchan Kim <minchan.kim@xxxxxxxxx>

Thanks, Hannes.
--
Kind regards,
Minchan Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/