From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752771AbbG2MZI (ORCPT ); Wed, 29 Jul 2015 08:25:08 -0400 Received: from outbound-smtp03.blacknight.com ([81.17.249.16]:35206 "EHLO outbound-smtp03.blacknight.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751342AbbG2MZG (ORCPT ); Wed, 29 Jul 2015 08:25:06 -0400 Date: Wed, 29 Jul 2015 13:25:02 +0100 From: Mel Gorman To: Vlastimil Babka Cc: Linux-MM , Johannes Weiner , Rik van Riel , Pintu Kumar , Xishi Qiu , Gioh Kim , LKML Subject: Re: [PATCH 08/10] mm, page_alloc: Remove MIGRATE_RESERVE Message-ID: <20150729122502.GB19352@techsingularity.net> References: <1437379219-9160-1-git-send-email-mgorman@suse.com> <1437379219-9160-9-git-send-email-mgorman@suse.com> <55B8A3F3.6090107@suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <55B8A3F3.6090107@suse.cz> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jul 29, 2015 at 11:59:15AM +0200, Vlastimil Babka wrote: > On 07/20/2015 10:00 AM, Mel Gorman wrote: > > From: Mel Gorman > > > > MIGRATE_RESERVE preserves an old property of the buddy allocator that existed > > prior to fragmentation avoidance -- min_free_kbytes worth of pages tended to > > remain free until the only alternative was to fail the allocation. At the > > ^ I think you meant contiguous instead of free? That is exactly what I meant. > Is it because > splitting chooses lowest possible order, and grouping by mobility means you > might be splitting e.g. order-5 movable page instead of using order-0 unmovable > page? And that the fallback heuristics specifically select highest available > order? I think it's not that obvious, so worth mentioning. > Yes, the commit that introduced MIGRATE_RESERVE discusses it so I didn't repeat it as the git digging is simply 1. Find the commit that introduced MIGRATE_HIGHATOMIC and see it replaced MIGRATE_RESERVE 2. Find the commit that introduced MIGRATE_RESERVE That locates 56fd56b868f1 ("Bias the location of pages freed for min_free_kbytes in the same MAX_ORDER_NR_PAGES blocks"). > > time it was discovered that high-order atomic allocations relied on this > > property so MIGRATE_RESERVE was introduced. A later patch will introduce > > an alternative MIGRATE_HIGHATOMIC so this patch deletes MIGRATE_RESERVE > > and supporting code so it'll be easier to review. Note that this patch > > in isolation may look like a false regression if someone was bisecting > > high-order atomic allocation failures. > > > > Signed-off-by: Mel Gorman > > Acked-by: Vlastimil Babka > Thanks. -- Mel Gorman SUSE Labs