Re: [v5][PATCH 6/6] mm: vmscan: drain batch list during long operations

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

 



On 06/04/2013 04:23 PM, Minchan Kim wrote:
> On Tue, Jun 04, 2013 at 08:24:38AM -0700, Dave Hansen wrote:
>> On 06/03/2013 11:05 PM, Minchan Kim wrote:
>>>>> This ensures that we drain the batch if we are about to perform a
>>>>> pageout() or congestion_wait(), either of which will take some
>>>>> time.  We expect this to help mitigate the worst of the latency
>>>>> increase that the batching could cause.
>>> Nice idea but I could see drain before pageout but congestion_wait?
>>
>> That comment managed to bitrot a bit :(
>>
>> The first version of these had the drain before pageout() only.  Then,
>> Mel added a congestion_wait() call, and I modified the series to also
>> drain there.  But, some other patches took the congestion_wait() back
>> out, so I took that drain back out.
> 
> I am looking next-20130530 and it has still a congestion_wait.
> I'm confusing. :(
> 
> 
>                 if (PageWriteback(page)) {
> 			/* Case 1 above */
> 			if (current_is_kswapd() &&
> 			    PageReclaim(page) &&
> 			    zone_is_reclaim_writeback(zone)) {
> 				congestion_wait(BLK_RW_ASYNC, HZ/10);
> 				zone_clear_flag(zone, ZONE_WRITEBACK);
>>
>> I _believe_ the only congestion_wait() left in there is a cgroup-related
>> one that we didn't think would cause very much harm.
> 
> The congestion_wait I am seeing is not cgroup-related one.

Yeah, sorry for the confusion.  There's been a whole lot of activity in
there.  My set is also done on top of a couple of fixes that Mel posted
later on, including this one:

	https://patchwork.kernel.org/patch/2619901/

*That* one removes the congestion_wait() you noticed.

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