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 5489AC61D97 for ; Fri, 24 Nov 2023 05:29:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C472C6B069A; Fri, 24 Nov 2023 00:29:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BF7056B069B; Fri, 24 Nov 2023 00:29:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id ABE8E6B069C; Fri, 24 Nov 2023 00:29:07 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 9D2386B069A for ; Fri, 24 Nov 2023 00:29:07 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 7B5A31CCA5C for ; Fri, 24 Nov 2023 05:29:07 +0000 (UTC) X-FDA: 81491719134.05.F5CB5FE Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf17.hostedemail.com (Postfix) with ESMTP id D90B840015 for ; Fri, 24 Nov 2023 05:29:05 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PpYv4BBj; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf17.hostedemail.com: domain of aneesh.kumar@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=aneesh.kumar@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700803746; a=rsa-sha256; cv=none; b=TTlXyhX4Mz381/kWKfvc2/W+ayEIHa/pMVb8kh+vvp1fHBLQJJgESNiv/74HBWjBaUxdeV 5Ky49yvgeWfnFF21n7JLioI1scw5g8yobqTffBdjejhsgPdrPnLKEJaAoPjUUezZlm6ue8 D8xUcgQkAU4YRQ2dWpx7NCOEGLEdz8c= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PpYv4BBj; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf17.hostedemail.com: domain of aneesh.kumar@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=aneesh.kumar@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700803746; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=RIjPH0Wg0lo9O0iqCjtzr2sB7wsHVfLSnOkbMHqE6mo=; b=DcCuUcJXv1ys0U15wYg0HRETVFxvD8IM+JR4teckndeAfAi6XMjk5aZK36+IFeHlpiU5Tt xuW61RqI5LU/zn5kP5coJfex48mmT3ebD9fWDDzIWe1xB4fS8YOX39FntAarbZJCB31N0F qTMy/0GI52L01oeZkYxLHxj2xe+aKzE= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id B3E1A616B4; Fri, 24 Nov 2023 05:29:04 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7B82FC433C7; Fri, 24 Nov 2023 05:28:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700803744; bh=b1xrLFEHTKstn3tjIcO7kRrLqNMDkvZlizKbZ9tMeZQ=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=PpYv4BBjh5pUqvb+tRw9+/ZzMx2Tz0YEDWezWO1IttzM0Vs+ZJzJeKKQIxKJNQ0p3 MnYvvnVpZ+8NNiBcV75ilpO+5qMuY88uD3QkQx5eelkd3JJQDmlWiAAB4WEdd6giY9 OSEc1zqwX3pbA6qEivv2Bd8HlAqgxCIABV9BqAeU6jza8xc3qQo/hUkmv7kLIqW3EC mQvOW9pAv3MePCglg1ruFu1oWrvpuChqcMpNYLnX9ei3Zbx5tMJddcT5W3/083HSp+ Jl2oKTVE9J1TRJVGPJB8Amm3RYIFOshsSCbvueTtjrnj8cJ30QQ718ITVxXeNnhFRr dcvO53tjfP9VA== X-Mailer: emacs 29.1 (via feedmail 11-beta-1 I) From: Aneesh Kumar K.V (IBM) To: Peter Xu , Christophe Leroy Cc: Andrea Arcangeli , James Houghton , Lorenzo Stoakes , David Hildenbrand , John Hubbard , Yang Shi , Rik van Riel , Hugh Dickins , "linux-kernel@vger.kernel.org" , Matthew Wilcox , Christoph Hellwig , "linux-mm@kvack.org" , Mike Rapoport , Jason Gunthorpe , "Kirill A . Shutemov" , Axel Rasmussen , Andrew Morton , "linuxppc-dev@lists.ozlabs.org" , Vlastimil Babka , Mike Kravetz Subject: Re: [PATCH RFC 06/12] mm/gup: Drop folio_fast_pin_allowed() in hugepd processing In-Reply-To: References: <20231116012908.392077-1-peterx@redhat.com> <20231116012908.392077-7-peterx@redhat.com> <57be0ed0-f1d7-4583-9a5f-3ed7deb0ea97@csgroup.eu> Date: Fri, 24 Nov 2023 10:58:51 +0530 Message-ID: <87zfz37m98.fsf@kernel.org> MIME-Version: 1.0 Content-Type: text/plain X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: D90B840015 X-Stat-Signature: zoi3uoiook83mpw8n8jua3pay4i99kjb X-HE-Tag: 1700803745-678642 X-HE-Meta: U2FsdGVkX1+70UqmwiQvW+0UO5wGxr/mhiWUQoTFh2YMwbJS0hFeC+vnqDvnydGdYkjniQBVxkC+cSnDPnr56bSiBpw0NTbGQZ9AZcMZauHgpL9snOrdWCuxwo4o+EXYFU7QHFbShiDIEu4OFu12Q3i9U2bepOA96wHaR9ZEhrNdmOmvPGlTbTPf2cr7p+jlDqLifLNJFx3OS88mheKrV3zZWzXP6YGWYaVyMZfW3BD+jCW+I/MNWhwXag4/MNHt354fIjdcSOAPvz1mT/IJqRpAfUuKE1a61DnCSrCmUHMQnNfy9EQYRsij3rC41fWg2xasSqMa1gbLo5Yvqj7BVZo60p89y/sq6Zr1zEiSNsiPWIilniSac2nxReFeFahjT2S5lpNWqyf6l+9AEwEyZZI9uiXm6Qg2p6qy+ozv6JUucVOUzd5rryHQVmvTt2nf6Q5g/ad05Ak1QjsJ2zRyvmGd3HBCKojO0rBhAocTLZkmZug4UYHqRu+Ai7e7a8B/ZetpHpRITfMmfuQBEaaaS1pYUmVc5mBH+MyxBEmrL4Esksrj1j/NndNNa8wTIcCWmlyGL2wsipIU96tCbzkktS4KPaPBqrUiYfy5YtDhstgtezYBQ2Z+jYZgosRiaWfywsj75fLvV1LcLp1jJTvlP3EPX314iKcklVljwMHidciGZeM7iT2WiEUrwcMPim9c9yy49oDJUVM1rA/O5/j2OGgJhC/CWSNA+vnfh7gby/dylaeFHheR0lfJj/UUFG3cyzBE4XjTzHC5yrPi5IduyZnapX0EVUcCu2l6G3BoQrdNizCautVpwx1//6N09O92xd3TY6H8UqhFNP7+qO36zztldhf06qtxbRLtFFp/WmfoEPM2t01kO9T7I+huCb6PJbQP+a27MZV3f7dhYjeVVnU/Pm77PjCp1glJjES2nuiOiqUBz3Svtz1ngsYpJr0k+1Pm+WsOOLPHZu8PuFf 4vTIma8W 7qOKHvGmzyWv4QS0lTi9MoW1+bs6TeAFIqBvt1hA70AXxsrMs4Yb/6BquW9pdD53MLDjacojMJ/8WDjaOIAYFl2kZfp3hwuCzuZFdrLTFoZjYK24cM2FRDYzqyhuOntRQoh1YJcnVmtG3lz11pywkbRWRCqPfYvgWKfisnLUTCWU1p/GfvkHpZxFNs/ld5m3gA6hBsSzt1Zdjs/Kj4Or9dfP3bRYG7Fpb4Feq0CYm2ULtVew0I+AJbdWSxytZ9GoOhnNwudtu76PdeGYOxRV/WtITg9jtZNpWiEg2714rvQ6BMO8GAoEP+GLyAnq4p1dF30V5iXlBmigFguFAApvaiTIfQw90B/rgsZ6vqPNWL281NimDJ5CqO5mclw== 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: Peter Xu writes: > On Thu, Nov 23, 2023 at 06:22:33PM +0000, Christophe Leroy wrote: >> > For fast-gup I think the hugepd code is in use, however for walk_page_* >> > apis hugepd code shouldn't be reached iiuc as we have the hugetlb specific >> > handling (walk_hugetlb_range()), so anything within walk_pgd_range() to hit >> > a hugepd can be dead code to me (but note that this "dead code" is good >> > stuff to me, if one would like to merge hugetlb instead into generic mm). >> >> Not sure what you mean here. What do you mean by "dead code" ? >> A hugepage directory can be plugged at any page level, from PGD to PMD. >> So the following bit in walk_pgd_range() is valid and not dead: >> >> if (is_hugepd(__hugepd(pgd_val(*pgd)))) >> err = walk_hugepd_range((hugepd_t *)pgd, addr, next, walk, PGDIR_SHIFT); > > IMHO it boils down to the question on whether hugepd is only used in > hugetlbfs. I think I already mentioned that above, but I can be more > explicit; what I see is that from higher stack in __walk_page_range(): > > if (is_vm_hugetlb_page(vma)) { > if (ops->hugetlb_entry) > err = walk_hugetlb_range(start, end, walk); > } else > err = walk_pgd_range(start, end, walk); > > It means to me as long as the vma is hugetlb, it'll not trigger any code in > walk_pgd_range(), but only walk_hugetlb_range(). Do you perhaps mean > hugepd is used outside hugetlbfs? > walk_pgd_range also get called from walk_page_range_novma(). IIRC commit e17eae2b839937817d771e2f5d2b30e5e2b81bb7 added the hugepd details to pagewalk code to handle ptdump. There is also a desire to use hugepd format in vmap mappings. https://lore.kernel.org/linuxppc-dev/cover.1620795204.git.christophe.leroy@csgroup.eu -aneesh