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 46AF1C369C2 for ; Fri, 18 Apr 2025 03:04:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1C4CB6B029F; Thu, 17 Apr 2025 23:04:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 174CB6B02A0; Thu, 17 Apr 2025 23:04:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 03E856B02A1; Thu, 17 Apr 2025 23:04:46 -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 D98696B029F for ; Thu, 17 Apr 2025 23:04:46 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 150C05DF0A for ; Fri, 18 Apr 2025 03:04:47 +0000 (UTC) X-FDA: 83345672214.16.A349E20 Received: from out-187.mta1.migadu.com (out-187.mta1.migadu.com [95.215.58.187]) by imf04.hostedemail.com (Postfix) with ESMTP id 2473040005 for ; Fri, 18 Apr 2025 03:04:44 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b="BgXaWFb/"; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf04.hostedemail.com: domain of muchun.song@linux.dev designates 95.215.58.187 as permitted sender) smtp.mailfrom=muchun.song@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744945485; a=rsa-sha256; cv=none; b=BmZlcAjHk2Dahj8luWGe07MrEG4Ophy4e3v+pld0JCTvMu0sqZv1zhNEvUmzIobkMsaCfI GetCprnNSdzIbok2AiTLSeozWl7rm8/89r27KuVKMxr8SI6x0WeIQlMIiGFdLpTkrapR1v hVArXdrG6asFrdbyGdamDlk5KhIWevM= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b="BgXaWFb/"; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf04.hostedemail.com: domain of muchun.song@linux.dev designates 95.215.58.187 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=1744945485; 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=QW73lLVQDBY9HtHolp7BHyp40jQLsHqENKUtxI23Uy4=; b=HtLbzdJCpdHI/gmdlVqQ7UtII70dsh0392csWlu+lopqbDDYsJmjmAqnoRv9hLIxu78Spf dLo3nI+SMO2NnbVc/9ZciDFQqhNJkiXV0PG7UoS2Nzlr6YRCxUrzGnTN0LI9kqWxlfollz K3nU3j9qp0Uz6szm9LPUpJI8OyiU1O8= Content-Type: text/plain; charset=us-ascii DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1744945482; 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=QW73lLVQDBY9HtHolp7BHyp40jQLsHqENKUtxI23Uy4=; b=BgXaWFb/z/6fIAeyooi3ncmg1VmTUKlE9phpAZgqbaA4RHskhpG7t4Luln+2WtKYBozZwV Lchr5k+Rcjod13GCpPf/zg664IGhet4uJuQIdiakGJL/67CHGcPtIXjR42fdQ5h8zHXw+W Ktf30sYm6Y2cWRzf3T1r6cv+STEImz0= Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.400.131.1.6\)) Subject: Re: [PATCH 3/3] mm/hugetlb: Refactor __unmap_hugepage_range() to take folio instead of page X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Muchun Song In-Reply-To: Date: Fri, 18 Apr 2025 11:03:59 +0800 Cc: Sidhartha Kumar , willy@infradead.org, mcgrof@kernel.org, a.manzanares@samsung.com, dave@stgolabs.net, akpm@linux-foundation.org, david@redhat.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Message-Id: <363E4489-76E8-4FD2-AD17-2E0B46160CAB@linux.dev> References: <20250417155530.124073-1-nifan.cxl@gmail.com> <20250417155530.124073-3-nifan.cxl@gmail.com> To: Fan Ni X-Migadu-Flow: FLOW_OUT X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 2473040005 X-Stat-Signature: 4x83py46w4hzu3gibxczowqkmer8j4g3 X-Rspam-User: X-HE-Tag: 1744945484-9747 X-HE-Meta: U2FsdGVkX18IRz5TQgaAnvgNbaxYo/rXSUTeCUnDB13PAO+4CymcyvI+CU5IP+HGczTfmLiPKYxYM1SkK41Ism5UvhHVa9VevPVOxFOZch6B6vPy8KNEScN64OPyaUCWygU6Oh+IsoNcMm1hb0PAHpCqbJdg2NFF7sldrAxFnu1EeOcmg6f22lahSGkuMjGZ5b4ji79TKx6t+bn3R4+s4l9bdt2/wJYyBY7+D3owJD5Fmfx4cxKLwW87lOuVHT4d3qr2RIawTXtSpCVGbX+boJHEqrEt1MZXPBSoTU2mzqn2/lu+C45qUAp1gL7w4JEw8a5ne8u84GPyukmgnscvde0fOS+cUhgme3QZ7opPpSCCJB71bTgAa1Ch3RC0UGRSYaq1vds+6S/k7GDzioyltPJ4m/nWRcVUWaBpeYnS7ti1Egile/w8+FjquHwMoq19voj5yDHAFWBf23WUCcEWL7Do/3egaZDkN0GF3ZWifgicl+wqtEh4DIWL4dkDN1DxH/geTHhUaZglKiSa/p1xoRzv2T/aQ3tbwQgVWz1snXQohe0QQ5GYi3OTc/yK1a4O463nMg+Vl5USVjZOHofJdfCH33NYZPq/p26JWJ+QXCAnCj1DfOlJvwCQ56mJ6Wb/NBu9IvvikXzLcITxeD/l2NP54AQFDqGa1TeeYFLvZt3w9wbUQYZ9ZBnXyEo6zfIcWIzi1l7srs1fJFsrfM4i3e5fX6cBj/jFYzjGophPCqSQs1IqSAZ0KWbda2eEnGFZCuTiFv/WUEJxF2ekUa6zlJc8UCRqt/x5Ku0aHliZW776CB4JUJn9yfv5EPnx9QsxTxGMjeTug4LOmFrAUI0B9ogMpeveYxgy0IDB1AHiLdu2lwA3brXycblCSYKg2J8y1ermLo9/vwYcfZ57SQZMUSYuFN6/2ARxy3CfP9DyOJHpxG5BZ/7IMMNgCip9ogXbREyg0B9WXZgYaA8fqfJ JfrCbM+n mRjC2bTJZ7i1vgrKTAb9Uz77hwx4+IGT56CZr/0HgzycWqKZLsugI9xE+FH198IqA1ofpnLD6rbTWMo5JqczOocbcihPn1iubcrjKi/v71Ft1tNevmLTr6AcBeyHirKOLmG/ekqx9Zevy5Ks798tiu+F6gBRIU8Su5KQr/POKH+XghUocPbwW21AndlDV/qiPpPbptiHsFvGqAtD+5SjhUuRwtzI3IHgdDuE2CjFIo+qM4bTRV16T4Pva5hb2h4VWNLr8EBGroklhfG8t6HI/WKDwsAm4FdkYqNgCbbgpvdg25dgdJzcB1GXIsZEPLSrGdvxk6X8heGCnDYp4/PfNvoipOrsDMBmkwutYrdGzplToYzjnoIjN8+OZIA== 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 Apr 18, 2025, at 00:34, Fan Ni wrote: >=20 > On Thu, Apr 17, 2025 at 12:21:55PM -0400, Sidhartha Kumar wrote: >> On 4/17/25 11:43 AM, nifan.cxl@gmail.com wrote: >>> From: Fan Ni >>>=20 >>> The function __unmap_hugepage_range() has two kinds of users: >>> 1) unmap_hugepage_range(), which passes in the head page of a folio. >>> Since unmap_hugepage_range() already takes folio and there are no = other >>> uses of the folio struct in the function, it is natural for >>> __unmap_hugepage_range() to take folio also. >>> 2) All other uses, which pass in NULL pointer. >>>=20 >>> In both cases, we can pass in folio. Refactor = __unmap_hugepage_range() to >>> take folio. >>>=20 >>> Signed-off-by: Fan Ni >>> --- >>>=20 >>> Question: If the change in the patch makes sense, should we try to = convert all >>> "page" uses in __unmap_hugepage_range() to folio? >>>=20 >>=20 >> For this to be correct, we have to ensure that the pte in: >>=20 >> page =3D pte_page(pte); >>=20 >> only refers to the pte of a head page. pte comes from: >>=20 >> pte =3D huge_ptep_get(mm, address, ptep); >>=20 >> and in the for loop above: >>=20 >> for (; address < end; address +=3D sz) >>=20 >> address is incremented by the huge page size so I think address here = only >> points to head pages of hugetlb folios and it would make sense to = convert >> page to folio here. >>=20 >=20 > Thanks Sidhartha for reviewing the series. I have similar = understanding and > wanted to get confirmation from experts in this area. I think your understanding is right. BTW, you forgot to update = definition of __unmap_hugepage_range() under !CONFIG_HUGETLB_PAGE case. >=20 > Thanks. > Fan