Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755427AbcJMLru (ORCPT ); Thu, 13 Oct 2016 07:47:50 -0400 Received: from mx2.suse.de ([195.135.220.15]:56081 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754536AbcJMLrH (ORCPT ); Thu, 13 Oct 2016 07:47:07 -0400 Subject: Re: [RFC 4/4] mm, page_alloc: disallow migratetype fallback in fastpath To: Joonsoo Kim References: <20160928014148.GA21007@cmpxchg.org> <20160929210548.26196-1-vbabka@suse.cz> <20160929210548.26196-5-vbabka@suse.cz> <20161013075856.GC2306@js1304-P5Q-DELUXE> Cc: Johannes Weiner , Mel Gorman , linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel-team@fb.com From: Vlastimil Babka Message-ID: <1a4548bd-a9b3-e6c0-7b4f-e75b5e4f4cbd@suse.cz> Date: Thu, 13 Oct 2016 13:46:05 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <20161013075856.GC2306@js1304-P5Q-DELUXE> 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: 1583 Lines: 31 On 10/13/2016 09:58 AM, Joonsoo Kim wrote: > On Thu, Sep 29, 2016 at 11:05:48PM +0200, Vlastimil Babka wrote: >> The previous patch has adjusted async compaction so that it helps against >> longterm fragmentation when compacting for a non-MOVABLE high-order allocation. >> The goal of this patch is to force such allocations go through compaction >> once before being allowed to fallback to a pageblock of different migratetype >> (e.g. MOVABLE). In contexts where compaction is not allowed (and for order-0 >> allocations), this delayed fallback possibility can still help by trying a >> different zone where fallback might not be needed and potentially waking up >> kswapd earlier. > > Hmm... can we justify this compaction overhead in case of that there is > high order freepages in other migratetype pageblock? There is no guarantee > that longterm fragmentation happens and it affects the system > peformance. Yeah, I hoped testing would show whether this makes any difference, and what the overhead is, and then we can decide whether it's worth. > And, it would easilly fail to compact in unmovable pageblock since > there would not be migratable pages if everything works as our > intended. So, I guess that checking it over and over doesn't help to > reduce fragmentation and just increase latency of allocation. The pageblock isolation_suitable heuristics of compaction should mitigate rescanning blocks without success. We could also add a per-zone flag that gets set during a fallback allocation event and cleared by finished compaction, or something. > Thanks. >