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 6B5E8C10F15 for ; Wed, 24 Apr 2024 23:34:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D62FC6B0092; Wed, 24 Apr 2024 19:34:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D13C86B0093; Wed, 24 Apr 2024 19:34:28 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BDAC46B0096; Wed, 24 Apr 2024 19:34:28 -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 9F47F6B0092 for ; Wed, 24 Apr 2024 19:34:28 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 44D69120C09 for ; Wed, 24 Apr 2024 23:34:28 +0000 (UTC) X-FDA: 82046031816.28.30241D9 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf04.hostedemail.com (Postfix) with ESMTP id 7AD014000C for ; Wed, 24 Apr 2024 23:34:26 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=k+gsUF74; dmarc=none; spf=pass (imf04.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1714001666; 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=Yt9rkyoEWWN8iV1XjerPzCUOjSVSXSeNMKGiuMcy6ss=; b=YS4GIyfQtzS4rp4ps503TojSbUeiMio7dADMKaMa6qfmd+8vs6ykXHmBY6MAu9HrgAfFJj RQN4Sqy6ICwh+Zu1qG3PYHkD2HoKdArhuKOiBom5pes4lPjCryB0pSBOihJuNfFJKM/zAN wruQmmXpA2/NR1Vp/5i5WeyhaKoSpjQ= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=k+gsUF74; dmarc=none; spf=pass (imf04.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1714001666; a=rsa-sha256; cv=none; b=ZNTQWYh3G8gbjcGklbwRDJE8G8DpGG+u+/sNgCI/SWapfu2ALLKj0VnXOaV+rY7UofEh/r IAE+uh2WszodjII+YdMl7Eq357zrq19GyRzMYA0I09pTtYh/LisJvcVOitjRFhSJNbumX7 9Dg8ARGKUgmpbmGnuXlfN9dxkhACtbM= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 55A6F611FD; Wed, 24 Apr 2024 23:34:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B8602C113CD; Wed, 24 Apr 2024 23:34:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1714001665; bh=r1lFMQ9tjlwDCB+yNR4sMxDGzxvWoPx/ZEFghdtGbrE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=k+gsUF74AM8tc617xiGEq89jMawYHg31Zlp93tTbs31afiLDVMXfdX/JXO6FR8DMm LSNG5DF6NtQKO+OqHklIjrbfJfilPNIunu38rKI43bKf2sIy9nLSJb0oclb5r5vbtu +zpCLAhE++JJx79s6IYUd5Ola9Hudc52ne9h+oKg= Date: Wed, 24 Apr 2024 16:34:23 -0700 From: Andrew Morton To: David Hildenbrand Cc: "Matthew Wilcox (Oracle)" , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-fscrypt@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net Subject: Re: [PATCH 6/6] mm: Remove page_mapping() Message-Id: <20240424163423.ad6e23a984deb731e2de497c@linux-foundation.org> In-Reply-To: <7c52ae2a-8f72-4c3c-b4b3-24b50bdb5486@redhat.com> References: <20240423225552.4113447-1-willy@infradead.org> <20240423225552.4113447-7-willy@infradead.org> <7c52ae2a-8f72-4c3c-b4b3-24b50bdb5486@redhat.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 7AD014000C X-Rspam-User: X-Stat-Signature: cmr9sbn35wefitwrpsmdiizi837j8jww X-HE-Tag: 1714001666-555336 X-HE-Meta: U2FsdGVkX1+vCGzzi0fnZJkHnA7MQm1xKN78CWjgNismkHOZ7/kflAmJoF2rLHyp6EzIt7gRm+VyR4mPHO0jK6/dhMZ3BRQZ44kzhhMZ0x1Woz1Ympf8IR5bVeZAbCsYU265PtK6BonMdIXM/nb5iTNygQIzEGHBTiZmwzsQl2BQEc5TBYW/qbiQOU4w8dpB8EL+gxBeZpzzRw2v6SUHp+VYreiZIPp7WA0+sx+hOm2mMOGCpMKEZVPzT/GndC6FCOfMO5FiqMIRko1vC8oZx21/wmZZ/c18m/ZT/1SJVjGIUkH5+C1+s09kMRg1bFukAcAi0OcfFWSnmnRX/LWSl/Ra4/WJzpNMelsFQ1ZhuJaMZH2TpahlNHHiZpCRftaAs6txnMsjIUXt4d7f4IhctPWEt7IC7+TNf4GKTMiVLL/T8jnQXIWOr6VDY0dr9f20pprVn8mlGXaG0VOL4m/31d5y7KXPRMcI5HvAdv1H+bWtaZY7iLJl6Ck6e7V9s9tgVzod2vVVN//ZDHOBySC3K0y/K36bEPGwuEpgjLUTkDuRFlzVKCxUc3qkoaIM/cFHDgrqyTvdxoK6sWTQiW0WSgy/D25KFVWaOPfbpjjMOCIldbACfxOmu8EF15z5YCgCXLaJ1Chku62K25CVJhrvP4UBi5NEJKqEMZkiL5eZsPU5xM7+qtevtQBx+tanAnIpmTaNe5PKFct81FN8Y6q48aD6/CebPhU0eJZab94y7x0/arkzCyrK+82lL2TdC0BI1s4yRbbO1RyyaOvyUy1z5nVY0ywhC2cyDrEVbccuiUXWsasBrBsaXmr4CaZoWLG3whHIFc+1OQOwZdnuUd86fVrtRBPVc7MqCK9IcXjiZ1txGvVqTMkO+GVVuA/pgNhRS/ec7lcQfqv3I++JHqlP0qwb+eknPB5LrX9vmTXkfWpHDQlajVzr0k2048c7nd0RAo75j7cwS19TNMipM/U PL7zvQ+g DvwHpSz1KyFiAF8dHVT3EAcUCQ3uKcpj0Tg9/HTenYqSrY6VZblBMpw2L4Qaa51nIvbce7mQbnGdEwIgxXp4aLGbSyUQ9VZxReaYDAPpDVuwZ1PC8XXdHQEkcePPjybgR6Hp98DTRXshxHLXvO08+ndHxFODQJV1mo2wE2vtw9Rop1kitp8vddS6NItj+vggj0aTnqzcTwaGbNbVC5CvjdLm6Fn0FTYD/6UZWQKHh1wFeACDsqeQBWvOVkiEwsbBNHAGGcmbI25wYQLOaBd20r2alwrhJ4+3H7A2/xBSRHF4/UZdklPSM8N3XwM0TYa2OF0UjTcIVMgqqPa/jofDOFM/baAOTW5+XUmLffNOSbX3OClRl8h1k5aVgWcSErY2DWiqP77nLErqjQNiHiEFNvaHF193tB9+EaW7a 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 Wed, 24 Apr 2024 13:55:32 +0200 David Hildenbrand wrote: > On 24.04.24 00:55, Matthew Wilcox (Oracle) wrote: > > All callers are now converted, delete this compatibility wrapper. > > For some reason, mm/hugetlb.c: In function 'hugetlb_page_mapping_lock_write': mm/hugetlb.c:2164:41: error: implicit declaration of function 'page_mapping'; did you mean 'page_mapped'? [-Werror=implicit-function-declaration] 2164 | struct address_space *mapping = page_mapping(hpage); | ^~~~~~~~~~~~ | page_mapped mm/hugetlb.c:2164:41: error: initialization of 'struct address_space *' from 'int' makes pointer from integer without a cast [-Werror=int-conversion] I'll disable "mm: Remove page_mapping()" pending review of the below, please. From: Andrew Morton Subject: mm: convert hugetlb_page_mapping_lock_write() to hugetlb_folio_mapping_lock_write Date: Wed Apr 24 04:20:30 PM PDT 2024 Convert this to use folios, so we can remove page_mapping() Cc: David Hildenbrand Cc: "Matthew Wilcox (Oracle)" Signed-off-by: Andrew Morton --- include/linux/hugetlb.h | 6 +++--- mm/hugetlb.c | 6 +++--- mm/memory-failure.c | 4 ++-- mm/migrate.c | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) --- a/mm/hugetlb.c~mm-convert-hugetlb_page_mapping_lock_write-to-hugetlb_folio_mapping_lock_write +++ a/mm/hugetlb.c @@ -2155,13 +2155,13 @@ static bool prep_compound_gigantic_folio /* * Find and lock address space (mapping) in write mode. * - * Upon entry, the page is locked which means that page_mapping() is + * Upon entry, the folio is locked which means that folio_mapping() is * stable. Due to locking order, we can only trylock_write. If we can * not get the lock, simply return NULL to caller. */ -struct address_space *hugetlb_page_mapping_lock_write(struct page *hpage) +struct address_space *hugetlb_folio_mapping_lock_write(struct folio *folio) { - struct address_space *mapping = page_mapping(hpage); + struct address_space *mapping = folio_mapping(folio); if (!mapping) return mapping; --- a/mm/memory-failure.c~mm-convert-hugetlb_page_mapping_lock_write-to-hugetlb_folio_mapping_lock_write +++ a/mm/memory-failure.c @@ -1595,7 +1595,7 @@ static bool hwpoison_user_mappings(struc * XXX: the dirty test could be racy: set_page_dirty() may not always * be called inside page lock (it's recommended but not enforced). */ - mapping = page_mapping(hpage); + mapping = folio_mapping(folio); if (!(flags & MF_MUST_KILL) && !PageDirty(hpage) && mapping && mapping_can_writeback(mapping)) { if (page_mkclean(hpage)) { @@ -1622,7 +1622,7 @@ static bool hwpoison_user_mappings(struc * TTU_RMAP_LOCKED to indicate we have taken the lock * at this higher level. */ - mapping = hugetlb_page_mapping_lock_write(hpage); + mapping = hugetlb_folio_mapping_lock_write(folio); if (mapping) { try_to_unmap(folio, ttu|TTU_RMAP_LOCKED); i_mmap_unlock_write(mapping); --- a/include/linux/hugetlb.h~mm-convert-hugetlb_page_mapping_lock_write-to-hugetlb_folio_mapping_lock_write +++ a/include/linux/hugetlb.h @@ -178,7 +178,7 @@ bool hugetlbfs_pagecache_present(struct struct vm_area_struct *vma, unsigned long address); -struct address_space *hugetlb_page_mapping_lock_write(struct page *hpage); +struct address_space *hugetlb_folio_mapping_lock_write(struct folio *folio); extern int sysctl_hugetlb_shm_group; extern struct list_head huge_boot_pages[MAX_NUMNODES]; @@ -297,8 +297,8 @@ static inline unsigned long hugetlb_tota return 0; } -static inline struct address_space *hugetlb_page_mapping_lock_write( - struct page *hpage) +static inline struct address_space *hugetlb_folio_mapping_lock_write( + struct folio *folio) { return NULL; } --- a/mm/migrate.c~mm-convert-hugetlb_page_mapping_lock_write-to-hugetlb_folio_mapping_lock_write +++ a/mm/migrate.c @@ -1425,7 +1425,7 @@ static int unmap_and_move_huge_page(new_ * semaphore in write mode here and set TTU_RMAP_LOCKED * to let lower levels know we have taken the lock. */ - mapping = hugetlb_page_mapping_lock_write(&src->page); + mapping = hugetlb_folio_mapping_lock_write(src); if (unlikely(!mapping)) goto unlock_put_anon; _