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 AC5CBC4167B for ; Tue, 5 Dec 2023 02:47:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1BC3D6B0088; Mon, 4 Dec 2023 21:47:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 16CBB6B0089; Mon, 4 Dec 2023 21:47:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 034176B008C; Mon, 4 Dec 2023 21:47:33 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id E595A6B0088 for ; Mon, 4 Dec 2023 21:47:33 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id B8E8B12051F for ; Tue, 5 Dec 2023 02:47:33 +0000 (UTC) X-FDA: 81531228786.26.72817F2 Received: from out-178.mta0.migadu.com (out-178.mta0.migadu.com [91.218.175.178]) by imf06.hostedemail.com (Postfix) with ESMTP id CE57A180016 for ; Tue, 5 Dec 2023 02:47:31 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=M41vbbN2; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf06.hostedemail.com: domain of muchun.song@linux.dev designates 91.218.175.178 as permitted sender) smtp.mailfrom=muchun.song@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1701744452; 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:in-reply-to:references:references:dkim-signature; bh=L+gZubsRH31odcoqRD7fvFFSzO5DYYZUYFSAk62Ge2s=; b=qKZXfN61867c8blHgX5+uAc+PWeXM3uVxyQvV5Yob8ZVXRFEPGm5RX4sRCt8ca2Jgof4Q9 JO35mpXrlJEU10IP5i6FCjdZuQTwMc3vHuanVUndDO8Ch4eni7+06bJFSyOXyB+N4rTP8H qW/3mtr9UXxoUyCPu7z0GPOo28zX8g4= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=M41vbbN2; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf06.hostedemail.com: domain of muchun.song@linux.dev designates 91.218.175.178 as permitted sender) smtp.mailfrom=muchun.song@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1701744452; a=rsa-sha256; cv=none; b=QJ2tgzuXq2TFjEJHGp0ZZAOGH7p8+tkDl3AhHL+kMeapdyBciQ1y7gIADTFunL6Gga1kiL NNCl7OI0TcY8n8q3eJui2fdTUMz5jAk0W+XrdNt7odJ+cBqSljwN5K8aHNmcFv6SguHLAc eDCv6/NkurIPempuW9Y/InE9FBsxw2g= Content-Type: text/plain; charset=us-ascii DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1701744450; h=from:from: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:in-reply-to:references:references; bh=L+gZubsRH31odcoqRD7fvFFSzO5DYYZUYFSAk62Ge2s=; b=M41vbbN2M2qKox8gqmA+RhYSM3dMqetsHI+A/5QB16j4LcxCVBSrYBvGGHlktMG3qVWr2a fgVQja15ijmTOAb0+Cilr0TNpyX7gpaZqTjBpiZHylCvAMrdpr37YFRm/jHy9BlUqXVlek 54JW757MdnpuGfGacTd+2/2/PMlGt94= Mime-Version: 1.0 Subject: Re: [PATCH 3/4] mm: hugetlb_vmemmap: move PageVmemmapSelfHosted() check to split_vmemmap_huge_pmd() X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Muchun Song In-Reply-To: <20231204232728.GD4129@monkey> Date: Tue, 5 Dec 2023 10:46:52 +0800 Cc: Muchun Song , Andrew Morton , Linux-MM , linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <20231127084645.27017-1-songmuchun@bytedance.com> <20231127084645.27017-4-songmuchun@bytedance.com> <20231204232728.GD4129@monkey> To: Mike Kravetz X-Migadu-Flow: FLOW_OUT X-Rspamd-Queue-Id: CE57A180016 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: trxjpo4ta6ykoasp9e5b1djszq78wuoi X-HE-Tag: 1701744451-823087 X-HE-Meta: U2FsdGVkX19wxklD6t2DjYpCMw3FORdVZfSP/CoX2+TbR40wbTgec4CPVJP4RkjQuIc3Q4WL6ZOUNnDlZtdtRZWBp4RRJCq7MbqFcG6ik5brKnG23PPrLJOE1gkNI00e95o+8Ey+qhY2y/3a4+M+LhBhf/KiFGkW6wx9RKv6D+73EoHr2oIkpHpIbI/XEpAbmuILvzpYAjWHRE/aj3TaL90497h93u2Z0dLE2YDnicxbVTtSi5124uoJxcGNfOPUEgqzIwV+pbX4nZabCEmvrhF+j5eBfxURurygYDtfwKvlgKYurYenuJSDNPYxlMfvrogEafdVKB/QT1qDndop8dNHdvjGYaPdMDU9KUmyDKZdGYbQenoSoVxfRcp+DsbN5b4de3SxovcKMUwFptow5ThMAsDOOpW1JQt1ILHCNyoqiMV7JCXWdViL2cst+hR9kt4ugp6VzXR3i1y6ck4mqJY3KPcBMZp3+AZ4iEQ8GamWmSK06sVyzDnMO3j7+wur+vlAqhowHDWXooqWeLRYTwFB1yPvzXiCaRcuQNz1ZemsbxMu6Z94XZt+R156o4waZDUWoAZ2N9DjEZZ1ZQwuGOEUKIAUIEhOymKaE76v712NxSsjSWNTqyUogOhA/mfc0VnkJ9wyiwWsPKxMithejEfeGaVyA0zPjFwKz4D5OiCBQAR2J1jj1HBlH2s4UqlypF69b/g5Wtv26/nrNRKXRPHvM3jsgpqavifYs3sC5lt6ANS9PVRHnFSK+xzzNwviG98ZO2yan7NiPfJbOohWfuTdG+TTLMVfRIBjYmPvbSRC/qdtRAKo0cDzuGWeEUobVlX5m/i8Du8eWoi5jG5RChIjkyEI6p2rlaWNmSP6wpMo41ZlZbPVh4PVHw2K+SFUqoDGtyxSG+5RB0PlmSlE65QnUNV0i4Vqm6X8MH1eFaHmfO4zsJ2yoK91Xu6+67iZ9ENeYetM/m3e+syufqt Kj1rxY+T 8I8hqDE6dzq1WlO0elaYc994XgBCcIHNal9sPW7bWAXqs0ywPAgBP7YVS2KvawwVyib3dg+egZCdDcaZD1TWbhUJxty6XnxP0gZsNDYjcvGcOxx/ngsV8ugbBBTofTlOJyF4SHpl5uBMSGfQkgD3mRWGIj/D6hqufzsLIsdpUktZTbYRd30bSw1gRmWIPsZBvSG04TaWkoz+qTZZy7M8cr3tOCQHwkxkbsXxBGvf4fXeAGX2U1vqiOVEhEA== 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 Dec 5, 2023, at 07:27, Mike Kravetz = wrote: >=20 > On 11/27/23 16:46, Muchun Song wrote: >> To check a page whether it is self-hosted needs to traverse the page = table (e.g. >> pmd_off_k()), however, we already have done this in the next calling = of >> vmemmap_remap_range(). Moving PageVmemmapSelfHosted() check to = vmemmap_pmd_entry() >> could simplify the code a bit. >>=20 >> Signed-off-by: Muchun Song >> --- >> mm/hugetlb_vmemmap.c | 70 = +++++++++++++++----------------------------- >> 1 file changed, 24 insertions(+), 46 deletions(-) >>=20 >> diff --git a/mm/hugetlb_vmemmap.c b/mm/hugetlb_vmemmap.c >> index ef14356855d13..ce920ca6c90ee 100644 >> --- a/mm/hugetlb_vmemmap.c >> +++ b/mm/hugetlb_vmemmap.c >> @@ -95,6 +95,7 @@ static int vmemmap_split_pmd(pmd_t *pmd, struct = page *head, unsigned long start, >> static int vmemmap_pmd_entry(pmd_t *pmd, unsigned long addr, >> unsigned long next, struct mm_walk *walk) >> { >> + int ret =3D 0; >> struct page *head; >> struct vmemmap_remap_walk *vmemmap_walk =3D walk->private; >>=20 >> @@ -104,9 +105,30 @@ static int vmemmap_pmd_entry(pmd_t *pmd, = unsigned long addr, >>=20 >> spin_lock(&init_mm.page_table_lock); >> head =3D pmd_leaf(*pmd) ? pmd_page(*pmd) : NULL; >=20 > I was going to ask why you dropped the: > if (IS_ENABLED(CONFIG_MEMORY_HOTPLUG)) > However, without the extra page table reads it really is not = necessary. I thought the compiler is smart enough to find out this code is unnecessary so that it will be dropped. But I am wrong, I did a test showing the compiler does optimize the code when CONFIG_MEMORY_HOTPLUG is disabled, but it is not enough compared with adding the check of = "IS_ENABLED(CONFIG_MEMORY_HOTPLUG)". I will add the check back in a separate patch (I suspect it is easy for Andrew to merge). >=20 > Reviewed-by: Mike Kravetz Thanks. > --=20 > Mike Kravetz