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 95851C54E58 for ; Fri, 15 Mar 2024 17:48:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F1FE080139; Fri, 15 Mar 2024 13:48:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ED080800B4; Fri, 15 Mar 2024 13:48:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D988A80139; Fri, 15 Mar 2024 13:48:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id C6179800B4 for ; Fri, 15 Mar 2024 13:48:39 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 11C25160643 for ; Fri, 15 Mar 2024 17:48:39 +0000 (UTC) X-FDA: 81900008358.22.1A68ED5 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf04.hostedemail.com (Postfix) with ESMTP id 24A3940009 for ; Fri, 15 Mar 2024 17:48:36 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=GECCR7bc; spf=none (imf04.hostedemail.com: domain of mcgrof@infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=mcgrof@infradead.org; dmarc=fail reason="No valid SPF, DKIM not aligned (relaxed)" header.from=kernel.org (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710524917; h=from:from:sender: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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=HFKGGKN+f0vBo92ILwKwd4CZp/WjaO7D1JcM7ZAAhnM=; b=eQRJb8d2qLglQ/06nNwgNvRHy4LJj9ZsaG2SacufFeCIzbbkJxptiAJ/kmXdOjKfKQpJzt NXEjO5t4Bi8F6VJREVqOEXLDHh4DP2me7krYE6JTMiiVJvedrGm5PCWrAr4ASyXR98sXyY 1WaN+9IMrrl6KdI4AaRoR84+VnEouss= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710524917; a=rsa-sha256; cv=none; b=VsAkVBMWGT9vqgIlY0OGRPvi2UaTEIZcCPE0DsadlxkXuQLc6HPQ1AnG2i9Z09YZe7K91n 0VB1G1koVuLySbdph2JRO1ay6HfO8WDXVNDzF0YiQ2gY4pCP4eAyEitADMYpXAEIt2aPSP bD6dGSQc2y71uByGhqyDF7PjY05N58I= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=GECCR7bc; spf=none (imf04.hostedemail.com: domain of mcgrof@infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=mcgrof@infradead.org; dmarc=fail reason="No valid SPF, DKIM not aligned (relaxed)" header.from=kernel.org (policy=none) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Sender:In-Reply-To:Content-Type: MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=HFKGGKN+f0vBo92ILwKwd4CZp/WjaO7D1JcM7ZAAhnM=; b=GECCR7bc4om9Eg+HFja4pmj6ft Y+qeRoneitJU+ZbzxBjUjRDt9BvQN1fgifstLw3yvuER/4FdGqyhPakC5NmIUf1Ewc13weBRsEat8 7rwNrkmY0RWTnkWbdHf6PDOA+5xXK5K9FdPjrmZlRa4krT5OGH7q0PQbsdsOhe6EXxj+uwTIucFHQ iTxLsbJpZiQgtgbFENUaBamsIc6VUQ58P77aX5nabLgRnDzczmZliMsyYV8lVu35Xc5XlxT11bgvu I/w3U68zePJ91kgv15kbk593vziVSFgBqdx6XYyZ0SkjQTqkGE3FmgiKg+DJdXXAcfUSVEmEpdOC4 cr7se9WQ==; Received: from mcgrof by bombadil.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1rlBfU-0000000142g-1tko; Fri, 15 Mar 2024 17:48:32 +0000 Date: Fri, 15 Mar 2024 10:48:32 -0700 From: Luis Chamberlain To: Vlastimil Babka Cc: Baolin Wang , akpm@linux-foundation.org, jhubbard@nvidia.com, mgorman@suse.de, linux-mm@kvack.org, linux-kernel@vger.kernel.org, dave@stgolabs.net, p.raghav@samsung.com, da.gomez@samsung.com Subject: Re: [PATCH 2/3] mm/compaction: add and use for_each_populated_zone_pgdat() helper Message-ID: References: <20240314005436.2962962-1-mcgrof@kernel.org> <20240314005436.2962962-3-mcgrof@kernel.org> <532c9e93-e8cc-4f6f-bf08-b5625022dd4f@suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <532c9e93-e8cc-4f6f-bf08-b5625022dd4f@suse.cz> X-Rspamd-Queue-Id: 24A3940009 X-Rspam-User: X-Stat-Signature: wooghjwmdtt95o7aqh4h8h9x68aipwsj X-Rspamd-Server: rspam03 X-HE-Tag: 1710524916-563712 X-HE-Meta: U2FsdGVkX18C+g06sKm2I53ATwO1F0mq9I9f730isO/sAVdfhrfqtkZi1BT3zodnQImRnu4XvRTGA+qstUimhk7X39Bumug2kWaoAsReiLEhk5DBR2sXN8neGct1c3sRAGutNaV2ktP4u4NHgenTlVF2oiz3XiUgZbJ3kBaKJ7LOXeYeiq9ZSz0wLMP09+bDp4NgiVwRf0RmOUbifvxjUfs8y30czlgGdDwdNtujF0koWaFYxNF1jdekSj7clOqwosxdI/EaCOensHbbuw7FGBFbkRGmS9vztBuQOCzg/ng89+AtYb7Sup+xTEToWIJr9ZTF2onKbo+UsRrg3i+J2Fqg3w80s0u1NSjBeizt2iBkNXy0c2HN1dG6etq7ItFQe8YOH1xyGULiPdtEaBclH+4ZSeGTBxbbGtZoTZhfWCM5IFAFFqrQbNBmj7HsO4ysx+rkGFxiciFiF3VB+gVz85Nlu7rmqHPbF0Kzv4o0hCPHv6w7HIK9iOnPKxqx+VYaYgHZpOjv7zadQ+3/+x/W3kfAxIQsQGCTZJWmWjhxnsyZ3XMSSvLQJ2jCQ+rqrAeVcC9oBXgBth807lVACnmx7DRYSRu0Al0HHnKvO/GXvBaDEoKpkzzxbKxfccUrWg9cep3pFCJHdbQdGoTF2PM/VRXRVSHYVtnqPxHM/Fv3Bj2R2BmGPDC0uAHSWdUNQviDuzDe71WIAGIl3rht3mzulCR3WL+laoHUGf1GVoY0sz0HS7FSim91YBeUxpn4IWSSF7AAmjBf4FlZWr2HhWWpoQvV0CIm/0pdOTzW1ct5PINn4//lraCUqJlupdbmng+3QlZPvyrHSg+yRWp7lIQOcWS/tdGVKXMB7AQBSJVAvwH8+tvSwtOwFxd9/gBzKjzUG7l8zt76kQXQcjSjzi/nGxYzHv0APU3DmcpBtCSAACU+/L/C/Lawv3fhwaL2MeXkLbDiGL3EdckNEQh4MB6 H5oGP82d 2R+9Csn+P6Rsa8AIwC303ELCb9NGRf5XyBmFebQbp8qtDVVLUF32Ve8dKsGr5xMdwXBdzsakX4JeCjd+CV3NaMM8ktw== 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: List-Subscribe: List-Unsubscribe: On Fri, Mar 15, 2024 at 12:09:29PM +0100, Vlastimil Babka wrote: > On 3/15/24 06:38, Luis Chamberlain wrote: > > On Thu, Mar 14, 2024 at 03:19:45PM +0800, Baolin Wang wrote: > >> > >> > >> On 2024/3/14 08:54, Luis Chamberlain wrote: > >> > We can just wrap most of the work done on fragmentation_score_node() > >> > into a pgdat helper for populated zones. Add the helper and use it. > >> > > >> > Signed-off-by: Luis Chamberlain > >> > --- > >> > include/linux/mmzone.h | 8 ++++++++ > >> > mm/compaction.c | 9 ++------- > >> > 2 files changed, 10 insertions(+), 7 deletions(-) > >> > > >> > diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h > >> > index a497f189d988..1fd74c7100ec 100644 > >> > --- a/include/linux/mmzone.h > >> > +++ b/include/linux/mmzone.h > >> > @@ -1597,6 +1597,14 @@ extern struct zone *next_zone(struct zone *zone); > >> > ; /* do nothing */ \ > >> > else > >> > +#define for_each_populated_zone_pgdat(zone, pgdat) \ > >> > + for (zone = pgdat->node_zones; \ > >> > + zone; \ > >> > + zone = next_zone(zone)) \ > >> > + if (!populated_zone(zone)) \ > >> > + ; /* do nothing */ \ > >> > + else > >> > >> I think this will break the original logics, since the next_zone() will > >> iterate over all memory zones, instead of only the memory zones of the > >> specified node. > > > > Definitely, thanks, so we'd need something like this in addition: > > IMHO that's unnecessarily complex, why not just do the iteration all inline > without this next_zone_pgdat() helper? Sure. > Also maybe you could find more users if you created just a > for_each_zone_pgdat() and left the populated_zone() in the user? Otherwise > it's quite a specific helper with just one user. Indeed, this was the only immediately clear user for_each_populated_zone_pgdat() which stood out, but I'll look more closely. I added this helper because in an RFC patch I had another use case: https://lkml.kernel.org/r/20240314005710.2964798-1-mcgrof@kernel.org Granted this is just an RFC. So happy to drop this if we don't have other users Luis