From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 78F65C05027 for ; Fri, 3 Feb 2023 22:23:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E31DC6B0071; Fri, 3 Feb 2023 17:23:31 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DE2256B0072; Fri, 3 Feb 2023 17:23:31 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CA9926B0073; Fri, 3 Feb 2023 17:23:31 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id BA2EF6B0071 for ; Fri, 3 Feb 2023 17:23:31 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 9988D1A0669 for ; Fri, 3 Feb 2023 22:23:31 +0000 (UTC) X-FDA: 80427408222.03.E35F3DE Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf08.hostedemail.com (Postfix) with ESMTP id A976616000A for ; Fri, 3 Feb 2023 22:23:28 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=olGirJqI; spf=pass (imf08.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1675463008; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=sQ4Lqx8aL96jxN9E19/JXbpEvIkCmAvkLTWwk31ytCE=; b=VZ7wJhyEB9bq+59gGR5wAbTVbf4YN/tfTuDKoDXAtoX3art3Fp6yRfzBgB70FhgJHMHMCs dzMQvGD4qJD67siBQUBP/KhWJ/TQez+00fbpjzFMRaLhBqFXvML6aBZ/+yWi8f8tZNGX+M 4FnlHMTqzu76aTEKcTHFO1tdo3hX/3M= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=olGirJqI; spf=pass (imf08.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1675463008; a=rsa-sha256; cv=none; b=QxN/YoJO9x8NibKzkWFZByoL+1U+91IBIgGyMvlFbiz2hhbhIuH7byPQU9GoxY1c6Yb6dS pHK6sq9XhbFPcq5KvmVgvuHXHr5Rq7GPtR8kmaPQ1Lsl/DqFR460cSMPiDXIkmMlUkelQq vfX8BGSW5mabQOwgGrkp1vkRc3Xe9Z4= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 0B4C7B82BF9; Fri, 3 Feb 2023 22:23:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6E561C433EF; Fri, 3 Feb 2023 22:23:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1675463005; bh=x/QP7n4Z6y3bx8oG8R5I1ggdO92a/Uj5dLVHJDLAnYI=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=olGirJqIBV2z8XtXCvyG2t3jf8WKiIwJt/JhqVGaWitwjZ08O4m12tNW/hCIAkund YKUrMffd1vpUmEoKVAuWG1G5iDVKI0mb93ybcyc1iBZ+W2l5toRN6IQf+LfX8ptX3O /v79ulXVnoLsx1Cd9Hcdb0TQT8XxUfSHqwLi6cFA= Date: Fri, 3 Feb 2023 14:23:24 -0800 From: Andrew Morton To: Yajun Deng Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Zi Yan , Mel Gorman , David Hildenbrand , Vlastimil Babka , Acked-by@kvack.org:Mike Rapoport , Oscar Salvador Subject: Re: [PATCH] mm/page_alloc: reduce fallbacks to (MIGRATE_PCPTYPES - 1) Message-Id: <20230203142324.e5c0652990676ac69a4e5eb1@linux-foundation.org> In-Reply-To: <20230203100132.1627787-1-yajun.deng@linux.dev> References: <20230203100132.1627787-1-yajun.deng@linux.dev> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: A976616000A X-Stat-Signature: rc1aj4fiiff1mffgesihzhqqgpfwe7i4 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1675463008-369887 X-HE-Meta: U2FsdGVkX1+upZrVPYRzha/75tELMTxGECMIRyv1ysQ8D4seqhIv8IT/2YazyNn9E4fgovxh5Jme2SPyTaaytA430GgK9YHdBMtVS/xzEdJ5drcgjNaVJJoTuR+fxlRynVMU4Cmmv9JO2JhQ67JlL5H//RkOsePic0hhvLHmWaH8X4MJgqwrIVwpPHc8ONH1lO4PtnuM1odAl2Pj2wNIWaA99FjQtJAump9ds7yIkenBTSASI8eCA/NurnCjktoQHYlVA/SwSUceei7/e/yQdX2Mu8VzeEZwAEiuG+Bcq6bOrsdGAdSyUEjrzF9xPhRvzdXD0oR1nYTC+Cj6Tdd4zbbZR4PAhOeCJFMKL1YBJR4H4xi6sDZjrWMCukUjDloSMFn9roSIw6Q3aMFF2sZuHs3MHgkuwduTR+3zhTyczYm4ozpefx3dBig8gI+OFvFZpZW0NmEMppFKwow1AulO4WwTsSg2XIOnEElzoIFl9lewPi9h4DH5+eKXJzhBoCvEBWULQ5c83AvesR3ED5MQ06Ec8MVPS8460y/68oKRVr+yBZqKqqrZ4iikH6n462OOhdKzXyLv6dom14YGZXqMyhaBtlXBg5kQy2ry6sVi5cA4gB6dpBnOx9Q0aANLaJwcLjlEdRWosQy6Amtf7VdtvXaNMqmZROKuq8wQTeTo9bAsu90xyJQXEQXs3sSEALe81DS24/BoAQhtRL4sJnk7qs3WyLmqemMSWwgx3aFSc88JctC7U07Re+zmdwiqHX27Zs49z0kk6Xa1Z5tya7djHGXF6QZTPC75HTSOlo+GqW3cLMKqfm84Ks2vglIpUFExPUil5tFH6DMHp4YwpcTNF/3OyGGNP08fW298zjUO6cAJQhfx5zIZSPhgRvqaTK7ng1eDPQahqyujrL1mIWF5m78nQOFbhMp+DZFzhcCQvfqAQ0H5wbApr+//70XFsg5vsWMk9zgBUpl6ea2p6EL p+mehzfS PPE+6vlvPfNKcKlO0F/ULUrysJkOcwSS/1sVyBc96JimGkk+Zlo0bCKAoZLdgBjFAQOLAT7RnBLS1FO+fr44afb1r0OlrySblF/E59udW2+azbaXan/UxMNUbK8CK93wJY09CuDfc08tkJNGgAlkbYipTU9CPWonQn4p8VeRLdI0kKEyMNhlPpA3qaAZ68XqxK7w1OzghsfZXcEH0eSefANUGxiprC2jgQYr3oadqx8+AXhCkT6gdc80ga/563RuDC/2dplRaJB6mxt59XW2iAx8Fr/mCSM8AYjG+67QEOmKPWmJPg+tqWz/jzMfG6ZeppLhhtMjHYWTdxNAy10Jet7ijyLtRfiH9xwdHwUFtzgy+VpiPbqtVPlBOUzEZntE7G7aSnm0OPIy8sQo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Fri, 3 Feb 2023 18:01:32 +0800 Yajun Deng wrote: > The commit 1dd214b8f21c ("mm: page_alloc: avoid merging non-fallbackable > pageblocks with others") has removed MIGRATE_CMA and MIGRATE_ISOLATE from > fallbacks list. so there is no need to add an element at the end of every > type. > > Reduce fallbacks to (MIGRATE_PCPTYPES - 1). Thanks. `git log' suggests who should be cc'ed when fixing things... > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -2603,10 +2603,10 @@ struct page *__rmqueue_smallest(struct zone *zone, unsigned int order, > * > * The other migratetypes do not have fallbacks. > */ > -static int fallbacks[MIGRATE_TYPES][3] = { > - [MIGRATE_UNMOVABLE] = { MIGRATE_RECLAIMABLE, MIGRATE_MOVABLE, MIGRATE_TYPES }, > - [MIGRATE_MOVABLE] = { MIGRATE_RECLAIMABLE, MIGRATE_UNMOVABLE, MIGRATE_TYPES }, > - [MIGRATE_RECLAIMABLE] = { MIGRATE_UNMOVABLE, MIGRATE_MOVABLE, MIGRATE_TYPES }, > +static int fallbacks[MIGRATE_TYPES][MIGRATE_PCPTYPES - 1] = { > + [MIGRATE_UNMOVABLE] = { MIGRATE_RECLAIMABLE, MIGRATE_MOVABLE }, > + [MIGRATE_MOVABLE] = { MIGRATE_RECLAIMABLE, MIGRATE_UNMOVABLE }, > + [MIGRATE_RECLAIMABLE] = { MIGRATE_UNMOVABLE, MIGRATE_MOVABLE }, > }; > > #ifdef CONFIG_CMA > @@ -2865,11 +2865,8 @@ int find_suitable_fallback(struct free_area *area, unsigned int order, > return -1; > > *can_steal = false; > - for (i = 0;; i++) { > + for (i = 0; i < MIGRATE_PCPTYPES - 1 ; i++) { > fallback_mt = fallbacks[migratetype][i]; > - if (fallback_mt == MIGRATE_TYPES) > - break; > - > if (free_area_empty(area, fallback_mt)) > continue; > > -- > 2.25.1