Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754527AbbG0Jah (ORCPT ); Mon, 27 Jul 2015 05:30:37 -0400 Received: from mx2.suse.de ([195.135.220.15]:34052 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753422AbbG0Jaf (ORCPT ); Mon, 27 Jul 2015 05:30:35 -0400 Subject: Re: [RFC v2 0/4] Outsourcing compaction for THP allocations to kcompactd To: Rik van Riel , linux-mm@kvack.org References: <1435826795-13777-1-git-send-email-vbabka@suse.cz> <55B24A1D.1030400@redhat.com> Cc: linux-kernel@vger.kernel.org, Andrew Morton , Hugh Dickins , Andrea Arcangeli , "Kirill A. Shutemov" , Mel Gorman , David Rientjes , Joonsoo Kim From: Vlastimil Babka Message-ID: <55B5FA31.6050301@suse.cz> Date: Mon, 27 Jul 2015 11:30:25 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: <55B24A1D.1030400@redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1918 Lines: 42 On 07/24/2015 04:22 PM, Rik van Riel wrote: > On 07/02/2015 04:46 AM, Vlastimil Babka wrote: >> This RFC series is another evolution of the attempt to deal with THP >> allocations latencies. Please see the motivation in the previous version [1] >> >> The main difference here is that I've bitten the bullet and implemented >> per-node kcompactd kthreads - see Patch 1 for the details of why and how. >> Trying to fit everything into khugepaged was getting too clumsy, and kcompactd >> could have more benefits, see e.g. the ideas here [2]. Not everything is >> implemented yet, though, I would welcome some feedback first. > > This leads to a few questions, one of which has an obvious answer. > > 1) Why should this functionality not be folded into kswapd? > > (because kswapd can get stuck on IO for long periods of time) Hm, my main concern was somewhat opposite - kswapd primarily serves to avoid direct reclaim (also for) order-0 allocations, so we don't want to make it busy compacting for high-order allocations and then fail to reclaim quickly enough. Also the waking up of kswapd for all the distinct tasks would become more complex. Also does kswapd really get stuck on IO? Doesn't it just issue writeback and go on? Again it would be the opposite concern, as sync compaction may have to wait for writeback before migrating a page and blocking kswapd on that wouldn't be nice. > 2) Given that kswapd can get stuck on IO for long periods of > time, are there other tasks we may want to break out of > kswapd, in order to reduce page reclaim latencies for things > like network allocations? > > (freeing clean inactive pages?) > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/