From patchwork Thu Apr 10 12:03:00 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: gaoxu X-Patchwork-Id: 14046460 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 BB9D5C369A8 for ; Thu, 10 Apr 2025 12:03:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 33FF02800DB; Thu, 10 Apr 2025 08:03:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 315972800F3; Thu, 10 Apr 2025 08:03:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1DED72800DB; Thu, 10 Apr 2025 08:03:07 -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 F32B72800F3 for ; Thu, 10 Apr 2025 08:03:06 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 4DFD3597CA for ; Thu, 10 Apr 2025 12:03:08 +0000 (UTC) X-FDA: 83317998456.27.7529B9C Received: from mta22.hihonor.com (mta22.hihonor.com [81.70.192.198]) by imf13.hostedemail.com (Postfix) with ESMTP id CD1CA20013 for ; Thu, 10 Apr 2025 12:03:05 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=none; spf=pass (imf13.hostedemail.com: domain of gaoxu2@honor.com designates 81.70.192.198 as permitted sender) smtp.mailfrom=gaoxu2@honor.com; dmarc=pass (policy=none) header.from=honor.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744286586; 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: references; bh=2HJEpfvBQlz7dQT60A81j7d32Y9ZWDLfKF+1y5GeKIg=; b=3gVyzr6ywxSXPUAmo3EtJJGA8fLyATD/ZqryMHK0XCHY6OfGfhJ8HYrEmUvU+fF1trCemS PyXKq6ZGjJUjNA3jM4gJSjKAqHY+GZQMwDaiez8oWr1i4mXrBX08skqRi0H8F2FxDAK0wR +SC6D16yVvd4Okc9Q6uYCOmMntNDfWo= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=none; spf=pass (imf13.hostedemail.com: domain of gaoxu2@honor.com designates 81.70.192.198 as permitted sender) smtp.mailfrom=gaoxu2@honor.com; dmarc=pass (policy=none) header.from=honor.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744286586; a=rsa-sha256; cv=none; b=dZI4yrY4hSwNMCBt5HgAhNV9fCD9O0mdW8PX4p1zdFnT6wL9nzfcNd4InSxLSCWvSdWEsL MSp6YZUKGziKfZK96A4PNhITxX43GeaFJg2vkc1JMhlIw67nhdnRpgIJGDJYByYvknrGJy aaV8TztbZKIYbTJR9UMY9l0MygFr3WQ= Received: from w011.hihonor.com (unknown [10.68.20.122]) by mta22.hihonor.com (SkyGuard) with ESMTPS id 4ZYJN20YBlzYl25P; Thu, 10 Apr 2025 20:02:26 +0800 (CST) Received: from a003.hihonor.com (10.68.18.8) by w011.hihonor.com (10.68.20.122) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.11; Thu, 10 Apr 2025 20:03:00 +0800 Received: from a007.hihonor.com (10.68.22.31) by a003.hihonor.com (10.68.18.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.11; Thu, 10 Apr 2025 20:03:00 +0800 Received: from a007.hihonor.com ([fe80::e866:83ac:f23b:c25c]) by a007.hihonor.com ([fe80::e866:83ac:f23b:c25c%10]) with mapi id 15.02.1544.011; Thu, 10 Apr 2025 20:03:00 +0800 From: gaoxu To: Andrew Morton CC: Mike Rapoport , "surenb@google.com" , Barry Song <21cnbao@gmail.com>, "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , yipengxiang Subject: [PATCH] mm: simplify zone_idx() Thread-Topic: [PATCH] mm: simplify zone_idx() Thread-Index: AduqEEHvK6kd7fhKS8Kk+tRXk/ygUQ== Date: Thu, 10 Apr 2025 12:03:00 +0000 Message-ID: <2d42decac5194c2c8d897b0424f0dcf3@honor.com> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.164.11.140] MIME-Version: 1.0 X-Rspamd-Queue-Id: CD1CA20013 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: 8c6j38x3jio8iwdoyt84wkaht1rwd91q X-HE-Tag: 1744286585-964950 X-HE-Meta: U2FsdGVkX18t4yMwztPuk+OGyjhilip6lyHKB4ogj+j37HacbQ1ojTMgVrt6tpAowpUQ8g3zk4xZns7SrDFngmskIifwoQNWaFcjjTK91h3ehcOm+jOSnB3vyQRyQaATrxIMDFu/9liwLFY1Hlb4bDouJGy1l2ElZKnrFuSaDiF19uhxXFsE6A232oy5Y+J2VrAkD/k+fAX/wNiAu6ZUiY4sE1ObXfACAH/6im78kYDGBJyxEOREuS5KiXTT2az6Bg/89VfJQHhB+oIzbh59DfTTntG4cHz/qIbrf8Qq+tC+PZhQy946iKONLb1WwOvpoAkl3KxYg59P514xyjVPsIwmEiGHM05NjpK+KSJT/02W1Vvi1b1A1bHkUrA4G9eYJo9Ofs/5F5h2pAKnyXOuKe71sAA8jjqRaE9UlhsVvdAOPAZlVpKtpg4soY8S3no8kpn0zSYZ54hsq+ZhFXN7tYGU+CoAWbtX7Xyh1x7B7cyngAhESHaOXVVsZMst/MYMyaK45XBKPCE8lcuXKKs6Tijwbq4HN6TtaDf40shxAFMYUlkIeHK5dna35bM5LMq6JL5yYyTm1F+hxbJy3J3uJpkd4XJRuZ6ZLf+LhWbbyV/u027hfZltb4Rm1SrqTMC3QjgFHwc80jFkTE8RCLTeeV/5WdIgcEWMCgsP32j2IKs6ex21sW4mpjwGkM4gLailH26mROgGZCEsq+u9d1XQHhw6Bu6OcscIg1qhd3yRR7Ve3hB8I8eROY9TQ3nV/VvzHPi7jzvHBrGT9AViS4d3SU+H5BrSGGR9r2h8M5Czo1zU9XRkqUggc7+iXFpaWXV7FEvbdcipXvCp+D6bEaG5UpSsmlhdvpfMmD74BHMAbrbeX5jhmzEgN9M4vIHHn8guTGoPOdMw0BNBVAv8W3391KN1GONAvT6Djn8WSsQt8+hs4TPHZM8EpjqtZXjReesT+efQTQYPvcjysW2+pmJ A0jyUfL3 H9ufxo3aGycrYUr14YtFdzc2f5a1BJ8i6hN6tfwQubsF6DRghc7TKFNm8oSfF6k5BfHrPgG+YTBI99rcU6Nj/DyW04L7Yv7e+Gex7AzDz8MeESd9OUxhJ8IShcN4EGyPBC8Q0tUGwDzeSV1/vq8kxpyQPRiSL7h2D0Egv5KnI7kiB9dtcV9pRQWfSgaLOvyW4KJGo0yhYmW2c/MZzR1goG6XQtmCDPib3sTAIgFlSionnhm9NIe3aL3teSYqLdm80c1JGLgpkBGFnW/ESz/DfADq+L9gZ4XljxFp8NdlZsAP7uIHD7cIxZ+Cc9SUKizZ8nryCNmuiEjJXRQiAufnV6Zh5sTzsGbyKFuN+FSzV34iA6iC/2NcmNzJDeqaFNzUv/weEGgS7EpIKxWfCmcfNKk5GBkAMX3BmhdEo 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: store zone_idx directly in struct zone to simplify and optimize zone_idx() Signed-off-by: gao xu --- include/linux/mmzone.h | 3 ++- mm/mm_init.c | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 4c95fcc9e..7b14f577d 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -941,6 +941,7 @@ struct zone { #endif const char *name; + enum zone_type zone_idx; #ifdef CONFIG_MEMORY_ISOLATION /* @@ -1536,7 +1537,7 @@ static inline int local_memory_node(int node_id) { return node_id; }; /* * zone_idx() returns 0 for the ZONE_DMA zone, 1 for the ZONE_NORMAL zone, etc. */ -#define zone_idx(zone) ((zone) - (zone)->zone_pgdat->node_zones) +#define zone_idx(zone) ((zone)->zone_idx) #ifdef CONFIG_ZONE_DEVICE static inline bool zone_is_zone_device(struct zone *zone) diff --git a/mm/mm_init.c b/mm/mm_init.c index 9659689b8..a7f7264f1 100644 --- a/mm/mm_init.c +++ b/mm/mm_init.c @@ -1425,6 +1425,7 @@ static void __meminit zone_init_internals(struct zone *zone, enum zone_type idx, atomic_long_set(&zone->managed_pages, remaining_pages); zone_set_nid(zone, nid); zone->name = zone_names[idx]; + zone->zone_idx = idx; zone->zone_pgdat = NODE_DATA(nid); spin_lock_init(&zone->lock); zone_seqlock_init(zone);