From nobody Mon Feb 9 01:44:07 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BD4AB31B812 for ; Wed, 21 Jan 2026 16:23:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769012589; cv=none; b=sFdDH2jZHAutwAs9WiGMCuh2og2ALj1GODqrq9RXe7DejuCEOdG3kwzHWPW3K4iVk7wD7qz1SDqQebew/bY2bm79b1mJuYj51L1YsxbcMXOHlHZ/FMX2nKrDosHYxcGX0SMymD3MGrOMEPO8okocyCWUQhXdEi09PDFRZPVqIaM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769012589; c=relaxed/simple; bh=ks57jkdW/KrJZ1O+qpYuIMBO4yJej3zDvmP56bgTAEc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=O6CAht4LZjaxa0HLcqahMftGI83BDiyJ1MjiR90tEm4KCmBddtWEJagJWEWOZ9zzMHBjNmT/TitPDQSibEUgvN6AgTrLUw+XMbP3+TrwPXEq7n0YVYTcp/MBJHhoAHP4EyjDNi/XT5Fd36IePtFsf1GI25r7varvEhuwZGNjB8I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pIi5QCw/; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="pIi5QCw/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E9227C19424; Wed, 21 Jan 2026 16:23:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1769012589; bh=ks57jkdW/KrJZ1O+qpYuIMBO4yJej3zDvmP56bgTAEc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pIi5QCw/PTZhzSSUXCUZ1FrVlZAG11OZ7NnpsEOlpwZ6I5/eSO2rWHMR4rgJEhm0d PHBV8YQGbkVl7uPLz/b7F+ooUCVFE0GIXbycIJJFHcFa7AAP6kisMUpxlAfjDe8N+V PeMotC3dHrSHaeGSi46jWOAMrnYYuSTxGvGOwqOkz19SwsVBoreSGgLf60FePBJGgY +2NipdqmLhj/O+2yJc7x/El/QzN0fosYJk3X/YoO9FJ3W8v8rHkNuZYK1kt1l10Pb/ DHIq8jGuxXGOR6QGF+IVwIcukr3Vea7pl2t11bnNZLgeq11KWz6FTRzXn+bjWbo4cL SzyAPoCaPaEeQ== Received: from phl-compute-01.internal (phl-compute-01.internal [10.202.2.41]) by mailfauth.phl.internal (Postfix) with ESMTP id 20192F4006B; Wed, 21 Jan 2026 11:23:08 -0500 (EST) Received: from phl-frontend-03 ([10.202.2.162]) by phl-compute-01.internal (MEProxy); Wed, 21 Jan 2026 11:23:08 -0500 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddugeefjeehucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhephffvvefufffkofgjfhgggfestdekredtredttdenucfhrhhomhepmfhirhihlhcu ufhhuhhtshgvmhgruhcuoehkrghssehkvghrnhgvlhdrohhrgheqnecuggftrfgrthhtvg hrnhephfdufeejhefhkedtuedvfeevjeffvdfhvedtudfgudffjeefieekleehvdetvdev necuvehluhhsthgvrhfuihiivgepudenucfrrghrrghmpehmrghilhhfrhhomhepkhhirh hilhhlodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqdduieduudeivdeiheeh qddvkeeggeegjedvkedqkhgrsheppehkvghrnhgvlhdrohhrghesshhhuhhtvghmohhvrd hnrghmvgdpnhgspghrtghpthhtohepvddtpdhmohguvgepshhmthhpohhuthdprhgtphht thhopegrkhhpmheslhhinhhugidqfhhouhhnuggrthhiohhnrdhorhhgpdhrtghpthhtoh epmhhutghhuhhnrdhsohhngheslhhinhhugidruggvvhdprhgtphhtthhopegurghvihgu sehkvghrnhgvlhdrohhrghdprhgtphhtthhopeifihhllhihsehinhhfrhgruggvrggurd horhhgpdhrtghpthhtohepuhhsrghmrggrrhhifheigedvsehgmhgrihhlrdgtohhmpdhr tghpthhtohepfhhvughlsehgohhoghhlvgdrtghomhdprhgtphhtthhopehoshgrlhhvrg guohhrsehsuhhsvgdruggvpdhrtghpthhtoheprhhpphhtsehkvghrnhgvlhdrohhrghdp rhgtphhtthhopehvsggrsghkrgesshhushgvrdgtii X-ME-Proxy: Feedback-ID: i10464835:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 21 Jan 2026 11:23:07 -0500 (EST) From: Kiryl Shutsemau To: Andrew Morton , Muchun Song , David Hildenbrand , Matthew Wilcox , Usama Arif , Frank van der Linden Cc: Oscar Salvador , Mike Rapoport , Vlastimil Babka , Lorenzo Stoakes , Zi Yan , Baoquan He , Michal Hocko , Johannes Weiner , Jonathan Corbet , kernel-team@meta.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, Kiryl Shutsemau Subject: [PATCHv4 06/14] mm: Make page_zonenum() use head page Date: Wed, 21 Jan 2026 16:22:43 +0000 Message-ID: <20260121162253.2216580-7-kas@kernel.org> X-Mailer: git-send-email 2.51.2 In-Reply-To: <20260121162253.2216580-1-kas@kernel.org> References: <20260121162253.2216580-1-kas@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" With the upcoming changes to HVO, a single page of tail struct pages will be shared across all huge pages of the same order on a node. Since huge pages on the same node may belong to different zones, the zone information stored in shared tail page flags would be incorrect. Always fetch zone information from the head page, which has unique and correct zone flags for each compound page. Signed-off-by: Kiryl Shutsemau Acked-by: Zi Yan --- include/linux/mmzone.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 6cfede39570a..390ce11b3765 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -1223,6 +1223,7 @@ static inline enum zone_type memdesc_zonenum(memdesc_= flags_t flags) =20 static inline enum zone_type page_zonenum(const struct page *page) { + page =3D compound_head(page); return memdesc_zonenum(page->flags); } =20 --=20 2.51.2