[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZEX8jV/FQm2gL+2j@casper.infradead.org>
Date: Mon, 24 Apr 2023 04:50:37 +0100
From: Matthew Wilcox <willy@...radead.org>
To: Yajun Deng <yajun.deng@...ux.dev>
Cc: david@...hat.com, osalvador@...e.de, gregkh@...uxfoundation.org,
rafael@...nel.org, akpm@...ux-foundation.org, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org
Subject: Re: [PATCH] mmzone: Introduce for_each_populated_zone_pgdat()
On Mon, Apr 24, 2023 at 11:07:56AM +0800, Yajun Deng wrote:
> Instead of define an index and determining if the zone has memory,
> introduce for_each_populated_zone_pgdat() helper that can be used
> to iterate over each populated zone in pgdat, and convert the most
> obvious users to it.
I don't think the complexity of the helper justifies the simplification
of the users.
> +++ b/include/linux/mmzone.h
> @@ -1580,6 +1580,14 @@ extern struct zone *next_zone(struct zone *zone);
> ; /* do nothing */ \
> else
>
> +#define for_each_populated_zone_pgdat(zone, pgdat, max) \
> + for (zone = pgdat->node_zones; \
> + zone < pgdat->node_zones + max; \
> + zone++) \
> + if (!populated_zone(zone)) \
> + ; /* do nothing */ \
> + else
> +
Powered by blists - more mailing lists