From patchwork Tue Nov 1 02:32:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yajun Deng X-Patchwork-Id: 13026607 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 8AFB5FA3741 for ; Tue, 1 Nov 2022 02:32:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EEB556B0072; Mon, 31 Oct 2022 22:32:56 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E9AFE6B0073; Mon, 31 Oct 2022 22:32:56 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D8AE96B0074; Mon, 31 Oct 2022 22:32:56 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id C97E46B0072 for ; Mon, 31 Oct 2022 22:32:56 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 94E8E409D2 for ; Tue, 1 Nov 2022 02:32:56 +0000 (UTC) X-FDA: 80083300752.23.8B46C82 Received: from out0.migadu.com (out0.migadu.com [94.23.1.103]) by imf26.hostedemail.com (Postfix) with ESMTP id 08E3D14000B for ; Tue, 1 Nov 2022 02:32:55 +0000 (UTC) X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1667269973; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=6TefmdO43ILS61YweujCpCvfdLxa126KkuiZEMMTg3c=; b=XDksCaR5tYi0qjMnF2RCdEumv8O4KTNHiCx2EzDr+cook6Vf/kFA5lFqVhAEJ0Yt+S7OhS GZTAuWKLRQ6a+mV8tVwuh4waKnVvf7yfnl5h54TkjbpA5LK2cJ64bDyXMIrQFfE/JW0il3 MtnXj0qcp5h3/PeC5Bw2UDAiy+6b+bk= From: Yajun Deng To: akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Yajun Deng Subject: [PATCH] mm: simplify page_zone() and get_deferred_split_queue() with page_pgdat() Date: Tue, 1 Nov 2022 10:32:19 +0800 Message-Id: <20221101023219.752365-1-yajun.deng@linux.dev> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1667269976; a=rsa-sha256; cv=none; b=eyCUTiQSU1QTEfx5q8PreC1bccQuePv4amDhQv9ZtIbJXrFb7GQcBRuemnfRizSobIqvOQ i9vCzjD3fLn355RKmphvrEJoaln+BwZmJcSrdV34SWwrGZMKzRcbQnXgNETN3gz4qF/2+o kYt2zc0bzDk2PnLbLlpxcTLwQj3t6nY= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=XDksCaR5; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf26.hostedemail.com: domain of yajun.deng@linux.dev designates 94.23.1.103 as permitted sender) smtp.mailfrom=yajun.deng@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1667269976; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=6TefmdO43ILS61YweujCpCvfdLxa126KkuiZEMMTg3c=; b=Ag+9rrshaNGNbI8HRX/p8nY5pqerT5B3d5+LtF3Stw9jHViW4SiWLXD1l9FUWh2Ujh0kxi 5Cb1JZ9dZGT3SxXgL1s2x2lOc+foLgn6Ai7tczBEBd1DCf6tb2lckc7St8GxZylM3wH4Ah RKu490Cq08/H7xXpY3sHtuFS+VJI8zk= X-Stat-Signature: 17xap3zk4n5zydiozkwr5rngc1mzgfah X-Rspamd-Queue-Id: 08E3D14000B X-Rspam-User: Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=XDksCaR5; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf26.hostedemail.com: domain of yajun.deng@linux.dev designates 94.23.1.103 as permitted sender) smtp.mailfrom=yajun.deng@linux.dev X-Rspamd-Server: rspam09 X-HE-Tag: 1667269975-414855 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: page_zone() is too long, we can shorten it by page_pgdat(). There is no need define pgdat variable if memcg isn't NULL, so use page_pgdat() to simplify get_deferred_split_queue(). Signed-off-by: Yajun Deng --- include/linux/mm.h | 8 ++++---- mm/huge_memory.c | 7 ++----- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 978c17df053e..25ff9a14a777 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1448,14 +1448,14 @@ static inline void page_kasan_tag_reset(struct page *page) { } #endif /* CONFIG_KASAN_SW_TAGS || CONFIG_KASAN_HW_TAGS */ -static inline struct zone *page_zone(const struct page *page) +static inline pg_data_t *page_pgdat(const struct page *page) { - return &NODE_DATA(page_to_nid(page))->node_zones[page_zonenum(page)]; + return NODE_DATA(page_to_nid(page)); } -static inline pg_data_t *page_pgdat(const struct page *page) +static inline struct zone *page_zone(const struct page *page) { - return NODE_DATA(page_to_nid(page)); + return &page_pgdat(page)->node_zones[page_zonenum(page)]; } static inline struct zone *folio_zone(const struct folio *folio) diff --git a/mm/huge_memory.c b/mm/huge_memory.c index 1ed245f6d1a7..a524db74e9e6 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -562,19 +562,16 @@ pmd_t maybe_pmd_mkwrite(pmd_t pmd, struct vm_area_struct *vma) static inline struct deferred_split *get_deferred_split_queue(struct page *page) { struct mem_cgroup *memcg = page_memcg(compound_head(page)); - struct pglist_data *pgdat = NODE_DATA(page_to_nid(page)); if (memcg) return &memcg->deferred_split_queue; else - return &pgdat->deferred_split_queue; + return &page_pgdat(page)->deferred_split_queue; } #else static inline struct deferred_split *get_deferred_split_queue(struct page *page) { - struct pglist_data *pgdat = NODE_DATA(page_to_nid(page)); - - return &pgdat->deferred_split_queue; + return &page_pgdat(page)->deferred_split_queue; } #endif