RE: [RFC][PATCH] avoid swapping out with swappiness==0

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

 



Hi Rik,

Thank you for reviewing.

On 03/02/2012 05:47 PM, Rik van Riel wrote:
> On 03/02/2012 12:36 PM, Satoru Moriya wrote:
>> @@ -1999,7 +1999,7 @@ out:
>>           unsigned long scan;
>>
>>           scan = zone_nr_lru_pages(mz, lru);
>> -        if (priority || noswap) {
>> +        if (priority || noswap || !vmscan_swappiness(mz, sc)) {
>>               scan>>= priority;
>>               if (!scan&&  force_scan)
>>                   scan = SWAP_CLUSTER_MAX;
> 
> However, I do not understand why we fail to scale the number of pages 
> we want to scan with priority if "noswap".
> 
> For that matter, surely if we do not want to swap out anonymous pages, 
> we WANT to go into this if branch, in order to make sure we set "scan" 
> to 0?
> 
> scan = div64_u64(scan * fraction[file], denominator);
> 
> With your patch and swappiness=0, or no swap space, it looks like we 
> do not zero out "scan" and may end up scanning anonymous pages.

With my patch, if swappiness==0 or noswap==1, fraction[file] is
set to 0. As a result, scan will be set to 0, too.

> Am I overlooking something?  Is this correct?
> 
> I mean, it is Friday and my brain is very full...

Have a nice weekend ;)

Regards,
Satoru
��.n������g����a����&ޖ)���)��h���&������梷�����Ǟ�m������)�����b�n���y��{^�w�r���&�i��('����춊m�鞵��â����چ�����i�������$����



[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]