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 A6DA3C54E67 for ; Thu, 28 Mar 2024 15:26:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 071D46B0085; Thu, 28 Mar 2024 11:26:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 022236B0087; Thu, 28 Mar 2024 11:26:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E2C276B0088; Thu, 28 Mar 2024 11:26:03 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id C3E256B0085 for ; Thu, 28 Mar 2024 11:26:03 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5FE8B160D9A for ; Thu, 28 Mar 2024 15:26:03 +0000 (UTC) X-FDA: 81946823406.19.F98C7C2 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf28.hostedemail.com (Postfix) with ESMTP id 9E29DC001A for ; Thu, 28 Mar 2024 15:26:01 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=fr+fls1F; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf28.hostedemail.com: domain of nathan@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=nathan@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711639561; a=rsa-sha256; cv=none; b=ZsCbX1FGv+h6nWtfKv21IPVF93rc0cq/Mp7X+gc/DLMs+cghm8xAEdvPDFW57Jzqz4FaLw jBDNoAxVocOBxivXAebsn7HkHzVKo2fcTChCnT3soJe7vZErHZ+bIb1Oe9pUMWiCkhvqZ2 N2Qhl5bEDkqqbz0l6FftN7u1AcU9QJc= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=fr+fls1F; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf28.hostedemail.com: domain of nathan@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=nathan@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711639561; 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=fLDj6uvHR+nf6Xdlm5YMwtLOSzQdp1rsuChkaF/2nqo=; b=jpuSKtvesHKLmfEngfYDV0sYJqaA777ibDoNNZZJXlZ3UmghfC44U805JvQK6Ma5n32Cmy lfvuUm1LcVpBoPjs9oOSm+CiwhBxBCxferTCFVUB3WITJ1jmnxeWMj6mTBEorsVumQHsK8 zDCm2yyWX+ErZeGX3bWMgafHI2WM9+o= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 966756171D; Thu, 28 Mar 2024 15:26:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B38C3C433F1; Thu, 28 Mar 2024 15:25:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711639560; bh=MDOXMNWp7B3/cIy75WFjXHCEKcIh8F3Z3uBLK8fC4XU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=fr+fls1Fl4VXsAn3vcjwmXYbhGJoF8NIgSG47/JsrzPEdB6i6oQdrYYqGg4vRJlky svcdFhubRXvEp9G30jkSht6BgPg1hcRFuYj0WnBN7K8VXrS0GZwcT+5IQ5iklDRehp JRhqy+loK1LBUlWaDMQRCrhU+amYoejKohFFQY6yOX9/ZKLVlr0TWlVFgj4LneD4Uu hNN7FoRf1a4hRQk98r4XPtejumUwm2unjSbGTbEsJrfUUh7QOCUrvE3Kc1DXewcqt2 mmFQWpylu6XvL4Gn2AVGBI4FHXXXbBB4pnjYW4SDcAyljvAgxcr0WJSnGV8CFnCyEW qDIPZUSdVTzzg== Date: Thu, 28 Mar 2024 08:25:58 -0700 From: Nathan Chancellor To: Christoph Hellwig Cc: Andrew Morton , Dave Hansen , Andy Lutomirski , Peter Zijlstra , Fei Li , x86@kernel.org, linux-mm@kvack.org Subject: Re: [PATCH 3/3] mm: move follow_phys to arch/x86/mm/pat/memtype.c Message-ID: <20240328152558.GA2652500@dev-arch.thelio-3990X> References: <20240328084629.2955393-1-hch@lst.de> <20240328084629.2955393-4-hch@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240328084629.2955393-4-hch@lst.de> X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 9E29DC001A X-Stat-Signature: wm9a11nipge4r6z9t73byyrfn4sf95ix X-HE-Tag: 1711639561-553169 X-HE-Meta: U2FsdGVkX19inRupzLqPUBKwkLCyFuKXVKhpQ7x2HIZojeAaYO6IOUIjZrx813dC1dt2m5xkoJGLe/6mCos1QFxi1IHa2+AsjkiMi3P6nAH1fLs9nlg+IW4BJHyT62ajTrmcpew1QqPg3AmpF6XpHVNGuFC5NWcZAZDXVf/esRbyjqQgZZd49s37Y35cC6f23tYlBFaRPzy3cGPCA/RpbJSdXGDaKeZSLoycwV0BOp5x0AnP3laSboCTNPPaUcZouWuG7zCA3X0EXrsr09ayqi0IdO1b7yZf4Ow6gt0cz5NSdHY9/vQ+QdXbtsNH7Q98YoLSah1NIyxPMY7iuEHhqeNAdbXzGyvbP05vqLjpXroBMwbt4GJVxf5/11QoGd861s+F/pXCjA5ktt4avOgb0dXGlBsA7G8nMNGuC99CPQhdKXIs+MWeoAJOaU+3CVcQINxMRwAyFKxNnhaIqhB2yy9l/MuSUlF42LBWBSQsweqYJBFuF07mGKA3OiXLEOT898W7EineK2tZTN/jfxe577/6UotxEpyxrLHsNIZTP0/J/gfeVHej4EHfIGxIN2QNpnLOXuyXWPi7NcsFhYE3s46wnp21KfEPKxsRrRVvUY+Fdwh3KHRCiwbmtKpOHW1igH8xuEbIiBxvp7Q1qDDNSapy6bDQ/MI+RQ1XRetqRNFanMDXMtkIvv0rn0eZj0rrlsll9yNfLgggneErIsp/b92++NspSK3yWB9NT3PviNcmItygcZRBvcaHlS1V9mAhVOaGItcf4403E9UadpTGOZjU8+zi8mXKNccvGC9xXJ3gBWrwSNp17SCJyg3Ci9nenLtcWkqAMoUm+NYzMy8S64/J0yQv33HHrKtNiwAqWxJRy0lxjPI4XAPhu2ozj3mWUn2xCSVHtpQjf2VXDXcVpQ1dUEMffvw3j5z4H5/scN/coSxXDgK2xcwC+rZbIULNCTLfwE/6UuzDCBXoPol NDLAD7I/ aqapPZvAPdMWpn3bo7qvrucfJPoqkiIq+i4tVZQJvDbaRTnAPybb8PZT0J5SkNSUy5fHW3qYKnJaws/1pf1zut3Y78RLaCiqI58CB4dgXTcXy5pMa7qDJ0vnyponpcrAmLzIs8GxG3w1QJAqhsQqip3p/33EX8ZsMwax2tbjqL0arptgBZ1p9aLZvm/Jsf4ZT0IM1YP1JwUPBQcllAmiFKNGOXmeBxT+vuBY4RC60jkHOeLo= 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: Hi Christoph, On Thu, Mar 28, 2024 at 09:46:29AM +0100, Christoph Hellwig wrote: > follow_phys is only used by two callers in arch/x86/mm/pat/memtype.c. > Move it there and hardcode the two arguments that get the same values > passed by both callers. > > Signed-off-by: Christoph Hellwig > --- > arch/x86/mm/pat/memtype.c | 23 +++++++++++++++++++++-- > include/linux/mm.h | 2 -- > mm/memory.c | 28 ---------------------------- > 3 files changed, 21 insertions(+), 32 deletions(-) > > diff --git a/arch/x86/mm/pat/memtype.c b/arch/x86/mm/pat/memtype.c > index 0d72183b5dd028..c64f07b0fc2099 100644 > --- a/arch/x86/mm/pat/memtype.c > +++ b/arch/x86/mm/pat/memtype.c > @@ -947,6 +947,25 @@ static void free_pfn_range(u64 paddr, unsigned long size) > memtype_free(paddr, paddr + size); > } > > +static int follow_phys(struct vm_area_struct *vma, unsigned long *prot, > + resource_size_t *phys) > +{ > + pte_t *ptep, pte; > + spinlock_t *ptl; > + > + if (!(vma->vm_flags & (VM_IO | VM_PFNMAP))) > + return -EINVAL; > + > + if (follow_pte(vma->vm_mm, vma->vm_start, &ptep, &ptl)) > + return -EINVAL; > + > + pte = ptep_get(ptep); > + *prot = pgprot_val(pte_pgprot(pte)); > + *phys = (resource_size_t)pte_pfn(pte) << PAGE_SHIFT; > + pte_unmap_unlock(ptep, ptl); memtype.c needs to include highmem.h for highmem-internal.h, otherwise I get a build failure (ARCH=i386 allmodconfig): In file included from include/linux/mm.h:30, from include/linux/memblock.h:12, from arch/x86/mm/pat/memtype.c:35: arch/x86/mm/pat/memtype.c: In function 'follow_phys': include/linux/pgtable.h:105:9: error: implicit declaration of function 'kunmap_local' [-Werror=implicit-function-declaration] 105 | kunmap_local((pte)); \ | ^~~~~~~~~~~~ include/linux/mm.h:3014:9: note: in expansion of macro 'pte_unmap' 3014 | pte_unmap(pte); \ | ^~~~~~~~~ arch/x86/mm/pat/memtype.c:965:9: note: in expansion of macro 'pte_unmap_unlock' 965 | pte_unmap_unlock(ptep, ptl); | ^~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors Cheers, Nathan diff --git a/arch/x86/mm/pat/memtype.c b/arch/x86/mm/pat/memtype.c index c64f07b0fc20..143d1e3d3fd2 100644 --- a/arch/x86/mm/pat/memtype.c +++ b/arch/x86/mm/pat/memtype.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include