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 035FBC71150 for ; Sun, 15 Jun 2025 07:10:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2FA786B0088; Sun, 15 Jun 2025 03:10:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2AB8F6B0089; Sun, 15 Jun 2025 03:10:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1C2206B008A; Sun, 15 Jun 2025 03:10:39 -0400 (EDT) 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 0C1546B0088 for ; Sun, 15 Jun 2025 03:10:39 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 856D5140662 for ; Sun, 15 Jun 2025 07:10:38 +0000 (UTC) X-FDA: 83556762156.10.E810591 Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf10.hostedemail.com (Postfix) with ESMTP id E1289C0002 for ; Sun, 15 Jun 2025 07:10:36 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=E8oM9R6w; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf10.hostedemail.com: domain of rppt@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749971437; a=rsa-sha256; cv=none; b=mBNbahedXC75GXoK3MH7VP2JvYGYESYA0ccVIACKuNzdzs3zE6naVpaw+wqWajRNybDMho fg8rqSnSvKHrhqQlvhKlXGwhsa/dUcfLh/mmeUs1hEZcPOdvsl54Pta0WNkwFC4O7hiDpk 5hF+TWufpXCVx/N0HYzuiSGJoVHyaa4= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=E8oM9R6w; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf10.hostedemail.com: domain of rppt@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749971437; 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=YjU0bJyWQuDXigcXDlmmyFV1Xxb+7Cs25OKFLNA8rNU=; b=ZXCUPEvuWYZjV5CVaWc+gz21feCQNsD6OqcJyLNMjFjWQK5Q7RClDMXCXymE2LLJXFV6bb nKDvGZXln4vE6lLcJvDlWbZj5gw1VFWEwqoxjYsgnGL537QD1B9RhwwR2hVmoSxbTav5cq 9Z+0LYK9iyCosbH4xntb0VChi89DapA= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 246DBA4EC8F; Sun, 15 Jun 2025 07:10:36 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 64885C4CEE3; Sun, 15 Jun 2025 07:10:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1749971435; bh=VCZD1hdThexKVktz+5rHz81d4+UMxBKBAvo4p0X8EFE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=E8oM9R6wdhHLlrH/iSVJA3kswJhfB4t78hwtr6w+L8s6mk857w9jtqk2kjtTrKMX8 Q5mLsoCVhwuzUDRSb7iQkL7LLs2NNUjmrrcTSkEQvpR/In6/eII76TyyI3YDSy7GBf D+eEn2TunvU7F/kml51ub/tUNsj3WvAWAgD0rGPvH24TRDyDHLReNcta5peFfmOBUQ wOGsEzzPKfAn5oqSuMcaLNhfv96J9MxyvQL9tc7ElbGTRXYx14NeVzz5l6mcEdOVqw IlaZQXeFEbv3CHun64A5m7yNi8dfUK08L0cYBOapv9rt4h0iYYjofy3mbhHx0MMqIU /xsNsqcfDXDOw== Date: Sun, 15 Jun 2025 10:10:30 +0300 From: Mike Rapoport To: "Matthew Wilcox (Oracle)" Cc: Andrew Morton , linux-mm@kvack.org Subject: Re: [PATCH] secretmem: Remove uses of struct page Message-ID: References: <20250613194744.3175157-1-willy@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250613194744.3175157-1-willy@infradead.org> X-Rspamd-Server: rspam01 X-Stat-Signature: zu9jekm8exrqusf44e5x5itcaw1ro1j7 X-Rspamd-Queue-Id: E1289C0002 X-Rspam-User: X-HE-Tag: 1749971436-221679 X-HE-Meta: U2FsdGVkX19EmmrRhQmX/bOT2fBp9dysHI/WIaQx4/FEilZdUIGjKJesjfpTOawJBvgKZudeWMu/J4i4UW1FES4j5otW3BmuWswoa3MxkXEn1UlQzibRs7xg0pjpAKxGZXeFT0Z1VvEB/EQHky4hHV/c/jodLQh3RqhfRhJsHc3Rv9EuBL2ASpDG12GNWtug7tKWGVDVN6he8niNVZszQcEOz2gaAoy4D12Vj5z7DffjomM263RQrDwp1OcizwcEpolM+CPVyKs1/K7LQlsmjo9M99/st5xQmgQ3KftSi1AQWsJ3ncu1lwtGm2wPd0XBigiiLa23OyyjKfDOnYdyydYtDL+Zdk6SqmfFQAuiKqDrLWnldHuyrPJB1AVQI1JhULtjZC7332s6bto2pSk/BrEObW5uPuGVC3phTOivO+j9KkWOM8nJ3u+Alu2AH2Y4OkBMs7kyIrrYxgCfgSGe3O3D+93zV0f1wUKq9H2NDP2Vpv09QTb+buyu1dhO0odMMdy55Oz8Hk3pvMkz7zzx8O1fQxv4jLk6O2Cipccgze5y6mA2VqBqDAKJmbPAeBbZdxB0m4Vx0f2v6LY4oP4Z0GlxRXrk/oMxuSLEQ08RALWiTjIkgr6n38N71uw1HpRexbv+xI7AIbyU94BJF8QH3ZBhs11hnH7RNzVyxF9MKuAnuwsgEZJtNn4gpw+RzKCpvlE2Sek/LADY/FdoxPR6Sa7vyexWn3TdCLF7Hj4+mtBTnVQc89/Mdq+ZcncRk62mtBUmP5U/uqKnwwldsTezQ+id4Er/77HF6VaEyl7+5KjFzM+JXAxyZP2OS129jfCMNKgLSh6jHK3JyMBZzh8Rraq+DrVR4BN02WUwOsLmprJs7fokiYlDUyfW7/6fRIypBDstswki/2eyd1rYx94/pcS4s0giNV8wtPSjFWRCBLqWJHQm2LkEk72HazQHMNuzcM90xRD/4fbI0+5ytFx e5NnpjUv dir5Gt3UGPecC5LWfzlpBpl7MIIGx4r7+D97HtAGN6zdMWPtpCsHPHHCfIqJbJmlW6HI16DyCQBcRxuuNVGHVlKCnnLluRIqvp6URj45ALSUh7giyN/5FNsbAQtmk1igS/ShjKXdGPkr2JfjPfwDAfOhaJSLWjlZJzLLmNhpm6hgg9ZPIX5u6iOrgAYS1nOheqyk42Pr7GFdFyGkY6/N3bcwtyZ5JF4HNsOvyW9GTy8f/+cI1ZFBU+6Vz3SVvMpTmGb2KtSEa0bFcqWhqPrbo8mYEiTncueLpiQ8zG2zkRRxwoaFx2wCuqEKtn9AQGDtzUJzpLPNqS7YQnjr2iMPNbBYVwg== 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 Fri, Jun 13, 2025 at 08:47:43PM +0100, Matthew Wilcox (Oracle) wrote: > Use filemap_lock_folio() instead of find_lock_page() to retrieve > a folio from the page cache. > > Signed-off-by: Matthew Wilcox (Oracle) Reviewed-by: Mike Rapoport (Microsoft) > --- > mm/secretmem.c | 16 +++++++--------- > 1 file changed, 7 insertions(+), 9 deletions(-) > > diff --git a/mm/secretmem.c b/mm/secretmem.c > index 589b26c2d553..dfa8d8d10bcb 100644 > --- a/mm/secretmem.c > +++ b/mm/secretmem.c > @@ -54,7 +54,6 @@ static vm_fault_t secretmem_fault(struct vm_fault *vmf) > pgoff_t offset = vmf->pgoff; > gfp_t gfp = vmf->gfp_mask; > unsigned long addr; > - struct page *page; > struct folio *folio; > vm_fault_t ret; > int err; > @@ -65,16 +64,15 @@ static vm_fault_t secretmem_fault(struct vm_fault *vmf) > filemap_invalidate_lock_shared(mapping); > > retry: > - page = find_lock_page(mapping, offset); > - if (!page) { > + folio = filemap_lock_folio(mapping, offset); > + if (!folio) { > folio = folio_alloc(gfp | __GFP_ZERO, 0); > if (!folio) { > ret = VM_FAULT_OOM; > goto out; > } > > - page = &folio->page; > - err = set_direct_map_invalid_noflush(page); > + err = set_direct_map_invalid_noflush(folio_page(folio, 0)); > if (err) { > folio_put(folio); > ret = vmf_error(err); > @@ -90,7 +88,7 @@ static vm_fault_t secretmem_fault(struct vm_fault *vmf) > * already happened when we marked the page invalid > * which guarantees that this call won't fail > */ > - set_direct_map_default_noflush(page); > + set_direct_map_default_noflush(folio_page(folio, 0)); > if (err == -EEXIST) > goto retry; > > @@ -98,11 +96,11 @@ static vm_fault_t secretmem_fault(struct vm_fault *vmf) > goto out; > } > > - addr = (unsigned long)page_address(page); > + addr = (unsigned long)folio_address(folio); > flush_tlb_kernel_range(addr, addr + PAGE_SIZE); > } > > - vmf->page = page; > + vmf->page = folio_file_page(folio, vmf->pgoff); > ret = VM_FAULT_LOCKED; > > out: > @@ -154,7 +152,7 @@ static int secretmem_migrate_folio(struct address_space *mapping, > > static void secretmem_free_folio(struct folio *folio) > { > - set_direct_map_default_noflush(&folio->page); > + set_direct_map_default_noflush(folio_page(folio, 0)); > folio_zero_segment(folio, 0, folio_size(folio)); > } > > -- > 2.47.2 > -- Sincerely yours, Mike.