From patchwork Wed Aug 14 15:44:21 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 13763655 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 3BEF4C3DA4A for ; Wed, 14 Aug 2024 15:44:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BD8E56B0082; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ADF5E6B008A; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 81AB86B0089; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 4FC2B6B007B for ; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 020711C443A for ; Wed, 14 Aug 2024 15:44:37 +0000 (UTC) X-FDA: 82451273436.16.C7E4480 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf10.hostedemail.com (Postfix) with ESMTP id 1A08BC0006 for ; Wed, 14 Aug 2024 15:44:35 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=P6zpsJQM; spf=none (imf10.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723650219; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=tfV7WoZ6NIM51vwBk5nQrfZfdmvlMkhuTSlo5MPjTHE=; b=zogiWo1qiT55pX5mE4jc2jIE+OyzsTsauUZ2/ToH3azuVBlq2Bbb/7kdiHBm23zB5KAM5x ljAqM44K2wuC/+GcBJmvYV99NUNAI/ye/RiAKH4vOXIjN6g3TqJBarztGfb6JMDMGWgrMi WqEwDpoXA3FU9DJ0ApcwR5X9mrnv5PE= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=P6zpsJQM; spf=none (imf10.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723650219; a=rsa-sha256; cv=none; b=D2SDv/w0bCJ3sIM/J8YkcVPDUH4TV28N5TVNezkD5FCLL+hLLMaqkery7ZAQuSX1wWrUye 9IG6Z7Sr5Kr26cKFFB783uLcZoLhL4f1ilREldt2oQ+Fbjf/UR+oBXKymUuHl6BEa5JmB4 v52+VoO6rMjenjNbcQS9X23rUjRPWcc= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=tfV7WoZ6NIM51vwBk5nQrfZfdmvlMkhuTSlo5MPjTHE=; b=P6zpsJQMoLWMp9gjjpDgfOniJp mYh9MDpOZMWOZwFaxo+86FQW0xoL2T4SrNuJOoxl6JBy1bAxTxZisWXj/TmSdkjGiG31E8jgxxK0V uCVmixj/y4r3WJjpxoeitbXCaqvI2vPBx0KtBK8oGNCQiaO7B4Fhhh2UQ1zALmZWo/rXhY9444JEE bjL6sQzxf52QpSmX16I4AZG81s3Y0SVYggpEXWr/p6wQQ2oDLBtly+wXCj4EBVYxX+eEGuc9wmMRH urqGYTLvJetcQJkLDTWc4qV7W5bd5iRWH3CA8yomPQ71vY3YIh3obEEy4rZ0N3yWoJON37Cy1yPG+ N0o9aWKg==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1seGAr-00000000gH6-44k9; Wed, 14 Aug 2024 15:44:34 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-arch@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" , linux-s390@vger.kernel.org, linux-um@lists.infradead.org, x86@kernel.org Subject: [PATCH 1/5] mm: Introduce a common definition of mk_pte() Date: Wed, 14 Aug 2024 16:44:21 +0100 Message-ID: <20240814154427.162475-2-willy@infradead.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240814154427.162475-1-willy@infradead.org> References: <20240814154427.162475-1-willy@infradead.org> MIME-Version: 1.0 X-Stat-Signature: ddgwz17xcyou6r6556449zxwg7fzm6w1 X-Rspam-User: X-Rspamd-Queue-Id: 1A08BC0006 X-Rspamd-Server: rspam02 X-HE-Tag: 1723650275-208754 X-HE-Meta: U2FsdGVkX1+wUN0/pYzRFhPiKAfQEPJkD7drc+4gQjaY62bNfDqazKjKOq4rhFYgUJpisncBBTsp+PH2j4Gae4MuzYYXMI3GxHNuqnuWs7tQeZ9rp0lvk6PtX/tyfXd6KmEUVH64n1eVnrq6sTwqVieCa5135LcqiwBd7dF1Km+dFrYmz6PtKdbQMhqsllOtJ4zWEvc9KdMPRAuWkyR5RHz/dyuzfUeFIubc7USGsvO1zD5Wf3YAPJmq06D8NaN/kXReu3RlQ4L7SAqhP6/zjzn8NuEZ05J+ok1faK1Mk23EbLxU+Wor2KWwh34DrJXkSUpQ1FtMtizQoNX2ulx9z/R2lPigZEgyJOn0YQy5SMDrr+ZHkWf/cChKnDwE8PpD76oqoDV1qkWMQyTCi6TG6umFTME8SoIcyBRqpkCrwvUVrN1eZWUriUyU7nJyrUizP25h2TRPYKxJoepve6zyVSrYCvOi+ab9kVZqfoRq2AF9jnazCSxXMD3Wmi+FIg0Jw6XbXiesAMZd4v4/C0u4oNe4KfaiR0GZhHl2x8GEVjnMHCcVh9H3/ku5NnJW57N4vyZypAqh2Sx/PxwTRmRqJ22VTdREPQRvTgCle8urgevjRjHPrueU5dbrgY4eAkNXPq2hlQ1UxKQ7sIOpplUa+xstyEjvfttflVFQisObUqKOQOhZqslFP9B/S+3RoR9lzOGKv9lR1+z1BkVNx7FQkGXUc7lEzz5kIPDY73VKLZnGLRL4RlZc1rQv50Nyro24qjaJQtoyhfN/JYhlayAD9GntMQYZ1/ERGBErBKx3sZpCclbfcG82ZOsP1xqX9sRWwx86VD2lqqazAGKubXEN9qFN/gZgtH6ynJHCRe80e6/fpsvxLYfBPzAclLC6K4+7nuJ09EmIvrJt1zAc3xFof3EQ2J6qenlBS70XOXCOwEJLM19NL9SpUVh5q/admqC+7vvmM2gAZRijZI/hTJS BhV8LEF7 g5yJ8tYKXAZBu+0uZ8i30y3t6XO4Oq9mIdOvI0MLNirgDMNZ+Lsz80NKch9IgZGLdcbx2w8C44BoCakul0+AZTEIJsWQLIBQiEHoHxl804oTMN0iowz6AGmCGwIDPUA7AOKjA9acuiFfK+10rV7w0k9irydnPdpBwjkkjKlu/ShdSWNkw5pL3D+qjoLjy5dFIyFBA8PM9fH7lLZAGJklomg2znS7uhPlPTMbLNw7voZaRaiybhKb36+P9kJbyNTPBMk4ZGwOPNZ7mS8w= 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: Most architectures simply call pfn_pte(). Centralise that as the normal definition and remove the definition of mk_pte() from the architectures which have either that exact definition or something similar. Signed-off-by: Matthew Wilcox (Oracle) --- arch/alpha/include/asm/pgtable.h | 7 ------- arch/arc/include/asm/pgtable-levels.h | 1 - arch/arm/include/asm/pgtable.h | 1 - arch/arm64/include/asm/pgtable.h | 6 ------ arch/csky/include/asm/pgtable.h | 5 ----- arch/hexagon/include/asm/pgtable.h | 3 --- arch/loongarch/include/asm/pgtable.h | 6 ------ arch/m68k/include/asm/mcf_pgtable.h | 6 ------ arch/m68k/include/asm/motorola_pgtable.h | 6 ------ arch/m68k/include/asm/sun3_pgtable.h | 6 ------ arch/microblaze/include/asm/pgtable.h | 8 -------- arch/mips/include/asm/pgtable.h | 6 ------ arch/nios2/include/asm/pgtable.h | 6 ------ arch/openrisc/include/asm/pgtable.h | 2 -- arch/parisc/include/asm/pgtable.h | 2 -- arch/powerpc/include/asm/pgtable.h | 1 - arch/riscv/include/asm/pgtable.h | 2 -- arch/s390/include/asm/pgtable.h | 1 + arch/sh/include/asm/pgtable_32.h | 8 -------- arch/sparc/include/asm/pgtable_32.h | 9 ++------- arch/sparc/include/asm/pgtable_64.h | 1 - arch/xtensa/include/asm/pgtable.h | 1 - include/linux/pgtable.h | 7 +++++++ 23 files changed, 10 insertions(+), 91 deletions(-) diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h index 635f0a5f5bbd..63e95f36f8ec 100644 --- a/arch/alpha/include/asm/pgtable.h +++ b/arch/alpha/include/asm/pgtable.h @@ -192,13 +192,6 @@ extern unsigned long __zero_page(void); #define pte_pfn(pte) (pte_val(pte) >> PFN_PTE_SHIFT) #define pte_page(pte) pfn_to_page(pte_pfn(pte)) -#define mk_pte(page, pgprot) \ -({ \ - pte_t pte; \ - \ - pte_val(pte) = (page_to_pfn(page) << 32) | pgprot_val(pgprot); \ - pte; \ -}) extern inline pte_t pfn_pte(unsigned long physpfn, pgprot_t pgprot) { pte_t pte; pte_val(pte) = (PHYS_TWIDDLE(physpfn) << 32) | pgprot_val(pgprot); return pte; } diff --git a/arch/arc/include/asm/pgtable-levels.h b/arch/arc/include/asm/pgtable-levels.h index 86e148226463..55dbd2719e35 100644 --- a/arch/arc/include/asm/pgtable-levels.h +++ b/arch/arc/include/asm/pgtable-levels.h @@ -177,7 +177,6 @@ #define set_pte(ptep, pte) ((*(ptep)) = (pte)) #define pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) #define pfn_pte(pfn, prot) __pte(__pfn_to_phys(pfn) | pgprot_val(prot)) -#define mk_pte(page, prot) pfn_pte(page_to_pfn(page), prot) #ifdef CONFIG_ISA_ARCV2 #define pmd_leaf(x) (pmd_val(x) & _PAGE_HW_SZ) diff --git a/arch/arm/include/asm/pgtable.h b/arch/arm/include/asm/pgtable.h index be91e376df79..74c3b5a6eab3 100644 --- a/arch/arm/include/asm/pgtable.h +++ b/arch/arm/include/asm/pgtable.h @@ -169,7 +169,6 @@ static inline pte_t *pmd_page_vaddr(pmd_t pmd) #define pfn_pte(pfn,prot) __pte(__pfn_to_phys(pfn) | pgprot_val(prot)) #define pte_page(pte) pfn_to_page(pte_pfn(pte)) -#define mk_pte(page,prot) pfn_pte(page_to_pfn(page), prot) #define pte_clear(mm,addr,ptep) set_pte_ext(ptep, __pte(0), 0) diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h index 7a4f5604be3f..33b6bf2add61 100644 --- a/arch/arm64/include/asm/pgtable.h +++ b/arch/arm64/include/asm/pgtable.h @@ -741,12 +741,6 @@ static inline unsigned long pmd_page_vaddr(pmd_t pmd) /* use ONLY for statically allocated translation tables */ #define pte_offset_kimg(dir,addr) ((pte_t *)__phys_to_kimg(pte_offset_phys((dir), (addr)))) -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page,prot) pfn_pte(page_to_pfn(page),prot) - #if CONFIG_PGTABLE_LEVELS > 2 #define pmd_ERROR(e) \ diff --git a/arch/csky/include/asm/pgtable.h b/arch/csky/include/asm/pgtable.h index a397e1718ab6..b8378431aeff 100644 --- a/arch/csky/include/asm/pgtable.h +++ b/arch/csky/include/asm/pgtable.h @@ -249,11 +249,6 @@ static inline pgprot_t pgprot_writecombine(pgprot_t _prot) return __pgprot(prot); } -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { return __pte((pte_val(pte) & _PAGE_CHG_MASK) | diff --git a/arch/hexagon/include/asm/pgtable.h b/arch/hexagon/include/asm/pgtable.h index 8c5b7a1c3d90..9fbdfdbc539f 100644 --- a/arch/hexagon/include/asm/pgtable.h +++ b/arch/hexagon/include/asm/pgtable.h @@ -238,9 +238,6 @@ static inline int pte_present(pte_t pte) return pte_val(pte) & _PAGE_PRESENT; } -/* mk_pte - make a PTE out of a page pointer and protection bits */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - /* pte_page - returns a page (frame pointer/descriptor?) based on a PTE */ #define pte_page(x) pfn_to_page(pte_pfn(x)) diff --git a/arch/loongarch/include/asm/pgtable.h b/arch/loongarch/include/asm/pgtable.h index 85431f20a14d..f2bbe3f74440 100644 --- a/arch/loongarch/include/asm/pgtable.h +++ b/arch/loongarch/include/asm/pgtable.h @@ -450,12 +450,6 @@ static inline unsigned long pte_accessible(struct mm_struct *mm, pte_t a) return false; } -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { return __pte((pte_val(pte) & _PAGE_CHG_MASK) | diff --git a/arch/m68k/include/asm/mcf_pgtable.h b/arch/m68k/include/asm/mcf_pgtable.h index 48f87a8a8832..f5c596b211d4 100644 --- a/arch/m68k/include/asm/mcf_pgtable.h +++ b/arch/m68k/include/asm/mcf_pgtable.h @@ -96,12 +96,6 @@ #define pmd_pgtable(pmd) pfn_to_virt(pmd_val(pmd) >> PAGE_SHIFT) -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { pte_val(pte) = (pte_val(pte) & CF_PAGE_CHG_MASK) | pgprot_val(newprot); diff --git a/arch/m68k/include/asm/motorola_pgtable.h b/arch/m68k/include/asm/motorola_pgtable.h index 9866c7acdabe..040ac3bad713 100644 --- a/arch/m68k/include/asm/motorola_pgtable.h +++ b/arch/m68k/include/asm/motorola_pgtable.h @@ -81,12 +81,6 @@ extern unsigned long mm_cachebits; #define pmd_pgtable(pmd) ((pgtable_t)pmd_page_vaddr(pmd)) -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { pte_val(pte) = (pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot); diff --git a/arch/m68k/include/asm/sun3_pgtable.h b/arch/m68k/include/asm/sun3_pgtable.h index 30081aee8164..73745dc0ec0e 100644 --- a/arch/m68k/include/asm/sun3_pgtable.h +++ b/arch/m68k/include/asm/sun3_pgtable.h @@ -76,12 +76,6 @@ #ifndef __ASSEMBLY__ -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { pte_val(pte) = (pte_val(pte) & SUN3_PAGE_CHG_MASK) | pgprot_val(newprot); diff --git a/arch/microblaze/include/asm/pgtable.h b/arch/microblaze/include/asm/pgtable.h index e4ea2ec3642f..b1bb2c65dd04 100644 --- a/arch/microblaze/include/asm/pgtable.h +++ b/arch/microblaze/include/asm/pgtable.h @@ -285,14 +285,6 @@ static inline pte_t mk_pte_phys(phys_addr_t physpage, pgprot_t pgprot) return pte; } -#define mk_pte(page, pgprot) \ -({ \ - pte_t pte; \ - pte_val(pte) = (((page - mem_map) << PAGE_SHIFT) + memory_start) | \ - pgprot_val(pgprot); \ - pte; \ -}) - static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { pte_val(pte) = (pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot); diff --git a/arch/mips/include/asm/pgtable.h b/arch/mips/include/asm/pgtable.h index c29a551eb0ca..d69cfa5a8ac6 100644 --- a/arch/mips/include/asm/pgtable.h +++ b/arch/mips/include/asm/pgtable.h @@ -504,12 +504,6 @@ static inline int ptep_set_access_flags(struct vm_area_struct *vma, return true; } -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - #if defined(CONFIG_XPA) static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { diff --git a/arch/nios2/include/asm/pgtable.h b/arch/nios2/include/asm/pgtable.h index eab87c6beacb..f490f2fa0dca 100644 --- a/arch/nios2/include/asm/pgtable.h +++ b/arch/nios2/include/asm/pgtable.h @@ -217,12 +217,6 @@ static inline void pte_clear(struct mm_struct *mm, set_pte(ptep, null); } -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -#define mk_pte(page, prot) (pfn_pte(page_to_pfn(page), prot)) - /* * Conversion functions: convert a page and protection to a page entry, * and a page entry and page directory to the page they refer to. diff --git a/arch/openrisc/include/asm/pgtable.h b/arch/openrisc/include/asm/pgtable.h index 60c6ce7ff2dc..71bfb8c8c482 100644 --- a/arch/openrisc/include/asm/pgtable.h +++ b/arch/openrisc/include/asm/pgtable.h @@ -299,8 +299,6 @@ static inline pte_t __mk_pte(void *page, pgprot_t pgprot) return pte; } -#define mk_pte(page, pgprot) __mk_pte(page_address(page), (pgprot)) - #define mk_pte_phys(physpage, pgprot) \ ({ \ pte_t __pte; \ diff --git a/arch/parisc/include/asm/pgtable.h b/arch/parisc/include/asm/pgtable.h index babf65751e81..4e87ebf08297 100644 --- a/arch/parisc/include/asm/pgtable.h +++ b/arch/parisc/include/asm/pgtable.h @@ -351,8 +351,6 @@ static inline pte_t pte_mkspecial(pte_t pte) { pte_val(pte) |= _PAGE_SPECIAL; re __pte; \ }) -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - static inline pte_t pfn_pte(unsigned long pfn, pgprot_t pgprot) { pte_t pte; diff --git a/arch/powerpc/include/asm/pgtable.h b/arch/powerpc/include/asm/pgtable.h index 264a6c09517a..f99cb39653f2 100644 --- a/arch/powerpc/include/asm/pgtable.h +++ b/arch/powerpc/include/asm/pgtable.h @@ -55,7 +55,6 @@ void set_ptes(struct mm_struct *mm, unsigned long addr, pte_t *ptep, /* Keep these as a macros to avoid include dependency mess */ #define pte_page(x) pfn_to_page(pte_pfn(x)) -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) static inline unsigned long pte_pfn(pte_t pte) { diff --git a/arch/riscv/include/asm/pgtable.h b/arch/riscv/include/asm/pgtable.h index 089f3c9f56a3..b63196bfe61c 100644 --- a/arch/riscv/include/asm/pgtable.h +++ b/arch/riscv/include/asm/pgtable.h @@ -343,8 +343,6 @@ static inline pte_t pfn_pte(unsigned long pfn, pgprot_t prot) return __pte((pfn << _PAGE_PFN_SHIFT) | prot_val); } -#define mk_pte(page, prot) pfn_pte(page_to_pfn(page), prot) - static inline int pte_present(pte_t pte) { return (pte_val(pte) & (_PAGE_PRESENT | _PAGE_PROT_NONE)); diff --git a/arch/s390/include/asm/pgtable.h b/arch/s390/include/asm/pgtable.h index 3fa280d0672a..6a21d947a687 100644 --- a/arch/s390/include/asm/pgtable.h +++ b/arch/s390/include/asm/pgtable.h @@ -1422,6 +1422,7 @@ static inline pte_t mk_pte(struct page *page, pgprot_t pgprot) __pte = pte_mkdirty(__pte); return __pte; } +#define mk_pte mk_pte #define pgd_index(address) (((address) >> PGDIR_SHIFT) & (PTRS_PER_PGD-1)) #define p4d_index(address) (((address) >> P4D_SHIFT) & (PTRS_PER_P4D-1)) diff --git a/arch/sh/include/asm/pgtable_32.h b/arch/sh/include/asm/pgtable_32.h index f939f1215232..db2e48366e0d 100644 --- a/arch/sh/include/asm/pgtable_32.h +++ b/arch/sh/include/asm/pgtable_32.h @@ -380,14 +380,6 @@ PTE_BIT_FUNC(low, mkspecial, |= _PAGE_SPECIAL); #define pgprot_noncached pgprot_writecombine -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - * - * extern pte_t mk_pte(struct page *page, pgprot_t pgprot) - */ -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) - static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { pte.pte_low &= _PAGE_CHG_MASK; diff --git a/arch/sparc/include/asm/pgtable_32.h b/arch/sparc/include/asm/pgtable_32.h index 62bcafe38b1f..531059cc2abb 100644 --- a/arch/sparc/include/asm/pgtable_32.h +++ b/arch/sparc/include/asm/pgtable_32.h @@ -255,7 +255,6 @@ static inline pte_t pte_mkyoung(pte_t pte) } #define PFN_PTE_SHIFT (PAGE_SHIFT - 4) -#define pfn_pte(pfn, prot) mk_pte(pfn_to_page(pfn), prot) static inline unsigned long pte_pfn(pte_t pte) { @@ -272,13 +271,9 @@ static inline unsigned long pte_pfn(pte_t pte) #define pte_page(pte) pfn_to_page(pte_pfn(pte)) -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - */ -static inline pte_t mk_pte(struct page *page, pgprot_t pgprot) +static inline pte_t pfn_pte(struct page *page, pgprot_t pgprot) { - return __pte((page_to_pfn(page) << (PAGE_SHIFT-4)) | pgprot_val(pgprot)); + return __pte((pfn << PFN_PTE_SHIFT) | pgprot_val(pgprot)); } static inline pte_t mk_pte_phys(unsigned long page, pgprot_t pgprot) diff --git a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h index 3fe429d73a65..c7a4d0034b60 100644 --- a/arch/sparc/include/asm/pgtable_64.h +++ b/arch/sparc/include/asm/pgtable_64.h @@ -225,7 +225,6 @@ static inline pte_t pfn_pte(unsigned long pfn, pgprot_t prot) BUILD_BUG_ON(_PAGE_SZBITS_4U != 0UL || _PAGE_SZBITS_4V != 0UL); return __pte(paddr | pgprot_val(prot)); } -#define mk_pte(page, pgprot) pfn_pte(page_to_pfn(page), (pgprot)) #ifdef CONFIG_TRANSPARENT_HUGEPAGE static inline pmd_t pfn_pmd(unsigned long page_nr, pgprot_t pgprot) diff --git a/arch/xtensa/include/asm/pgtable.h b/arch/xtensa/include/asm/pgtable.h index 1647a7cc3fbf..c550ed288273 100644 --- a/arch/xtensa/include/asm/pgtable.h +++ b/arch/xtensa/include/asm/pgtable.h @@ -279,7 +279,6 @@ static inline pte_t pte_mkwrite_novma(pte_t pte) #define pte_same(a,b) (pte_val(a) == pte_val(b)) #define pte_page(x) pfn_to_page(pte_pfn(x)) #define pfn_pte(pfn, prot) __pte(((pfn) << PAGE_SHIFT) | pgprot_val(prot)) -#define mk_pte(page, prot) pfn_pte(page_to_pfn(page), prot) static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index 2289e9f7aa1b..8204ffd87d74 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -41,6 +41,13 @@ #define FIRST_USER_ADDRESS 0UL #endif +#ifndef mk_pte +static inline pte_t mk_pte(struct page *page, pgprot_t pgprot) +{ + return pfn_pte(page_to_pfn(page), pgprot); +} +#endif + /* * This defines the generic helper for accessing PMD page * table page. Although platforms can still override this From patchwork Wed Aug 14 15:44:22 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 13763657 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 120CFC3DA4A for ; Wed, 14 Aug 2024 15:44:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1DD7F6B0088; Wed, 14 Aug 2024 11:44:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 146346B008A; Wed, 14 Aug 2024 11:44:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E3BAA6B0089; Wed, 14 Aug 2024 11:44:38 -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 A87C36B0088 for ; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id E6B83A782C for ; Wed, 14 Aug 2024 15:44:37 +0000 (UTC) X-FDA: 82451273394.27.AAA8C9E Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf05.hostedemail.com (Postfix) with ESMTP id D4E25100023 for ; Wed, 14 Aug 2024 15:44:35 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b="cx/fp8n6"; dmarc=none; spf=none (imf05.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723650223; a=rsa-sha256; cv=none; b=eFqfPXXOiTLH95hyjjyoM6sKsYlahRjXTowgx3YCwaGbCEq4HsQ1HTFFJSJ+mLSTrwNFRT qVOGAHe2/t0p7Z8ngjSb75vZnQ9I2/EYmUegN5llkWH0IsbQgwr1UF4xZL+a0T2MuiEeZ1 kLZLUUCW2ozlu40NCseJojFLxgBmlRw= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b="cx/fp8n6"; dmarc=none; spf=none (imf05.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723650223; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ZfJtp4EbP1iZkIk82oFzdjbw9nzCO7poA8zUpczfu6w=; b=odQVOWxfB3lPiw82afjY+fBlBxRP2qDm+yYvBuLaoRK38AEw50yM6bOOOZkxZB77gofFOk 3zIwBdCktccpIL+cEh981ktgdnYU010EKBOUIPuErPC7VAeoNEoa/CgPEmLNJCAHbv8bB5 AO7xdXIoWk+zQBYo/iXWJyOfkfjjT2o= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=ZfJtp4EbP1iZkIk82oFzdjbw9nzCO7poA8zUpczfu6w=; b=cx/fp8n6YDoLDZDivZBEBUPoBf 7ObTXu6V8ldOrCsCH5JZwR6HapYacQsPn0OkQwh3rD/6MX+Z7ptLSqPxtGA1Ga9ROwWnR1pGnGe2Y Y6qIoYBD6p4j31Jmi38iLW6ye9WfdpNIuDoGkZtb/wxSPxL8w3nmWuNji790lX/oyS0K7mQGE92Nu lXbS4ZKPeV3GwTbi1i/jYpk1PMHy47lXAOQzZs0rPeUZnOJD1K2CVm1acSk1oBiPMZG/CoeU8DyzP Lq2/qMKI2u7/MdGoMqnYWaUiFBqT1wAM7IpT0SmLSX3naLwhT9HOeg9srCDiFcjf3FH5XKnMQdEWn O9oGjloQ==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1seGAs-00000000gHE-0SrN; Wed, 14 Aug 2024 15:44:34 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-arch@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" , linux-s390@vger.kernel.org, linux-um@lists.infradead.org, x86@kernel.org Subject: [PATCH 2/5] x86: Remove custom definition of mk_pte() Date: Wed, 14 Aug 2024 16:44:22 +0100 Message-ID: <20240814154427.162475-3-willy@infradead.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240814154427.162475-1-willy@infradead.org> References: <20240814154427.162475-1-willy@infradead.org> MIME-Version: 1.0 X-Rspamd-Queue-Id: D4E25100023 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: enapsf5g6ju6b1h6ooey33qa8ors3e6u X-HE-Tag: 1723650275-421224 X-HE-Meta: U2FsdGVkX195ps8RI6yeXeEpgkuyeOTWYql4j7EjULe4CALGhyWvN9xGWUByskgh7j+y1UTCM0NO9yWLPcWdG2zmX1Tvjrgiz9LO13NbVZbE0LCX/7sDDy7peIR1cF8fp54HVQuwd7RyfZTS9fy1MWUYftD896+D2UDkN3y8xWhDOiW3B6mKTPOBbIf7yH4OPiF8da9G8si4aGXV1p7HW6j1Q7nuASGts7jl5p+vqVqKbhTbob/UtaDM8eBST1ViEwCOdld0bHZj8F+kpr1hp82eCbmtuU7wVowUx6gDU1+qbdqE3BV91tGgh5f17sTj0QshrPnhglYUoVbG12SC3KQhXCRZmzI98osA8wok0CAygr6m8bTBNX+0Uw37GrYc+tnZhv62tTleNf06O/tJXCbnPYqM8NbZxtSJFih8By7M40U/WN1ZnKFEm/Odp+hOpYJTyAtCXO9MpTITEKGU6VCtooi1eKgKDiS9ew9gDvuFZfk2o2ZgqcpCo/STtUyE3lgK/FDNXHqFAItXy0hl7zEhMXOBlM2aSe1HbAryckX7SS442zkgf0ud1ZnZSS5BIMA0j23dNsyiLwzugg4UmCqav9Vt7S8OkZauV2HBPvAMPIDkXo2rKxaP6EWOLdyDrLS/mv7JqXHaQRooAGMm0bPKaRkHSws72jLkUUVrnPhVgCkhfAayF5wlXYNu/3KGsWpYvxx3H9zH5s+GARmt+x7ukv8FrAQFyA6aNe95VgIPWJZH57J+bD5KADbxstokbdJX1kdPgGCX4GNkO/CE1uHvoaqMSZ/nqMhaMp4pwF+Whj2MTh1nEfnLCBSp1vf3z0whZCTe3MGEWLoDwbSSQLymBvZetj9JVjiUaBNZztFoktE3b8gNcwMLAyG5SnoSKapZ/y4S+0ODTRlG43o4vX8gPxpOLklWkJCBgG3YT/jTQyUwAaMGTG9gfxrwXlbpyqpBtwQgZSRO9R6lt60 1TSurZ0K C3iktKF3nVaHiRwYZGIMtdVH1NZ37cw3gMkEjausG/loXZPYmoC3nzD69Ks0u2myLf5mgLfv30Gl6aQpfYkr5A1Wv0IYEpQNIBjeWzYFuDtzQ65vKx78qIi1AuhdTiMPnBdmk31tuAEPQLa93KFQH5Me4P9VwbZJkahwHE/lwqADqCr3vXvnMAEAX3QjgQM5VDRuO5eb342jCCIGP1ztL5zDhFkYQW8hqklKp8X92JShxJxshxoY+0X3JwrG1bGwZFc+H 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: Move the shadow stack check to pfn_pte() which lets us use the common definition of mk_pte(). Signed-off-by: Matthew Wilcox (Oracle) --- arch/x86/include/asm/pgtable.h | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h index a7c1e9cfea41..59baf4e183b2 100644 --- a/arch/x86/include/asm/pgtable.h +++ b/arch/x86/include/asm/pgtable.h @@ -760,6 +760,9 @@ static inline pgprotval_t check_pgprot(pgprot_t pgprot) static inline pte_t pfn_pte(unsigned long page_nr, pgprot_t pgprot) { phys_addr_t pfn = (phys_addr_t)page_nr << PAGE_SHIFT; + /* This bit combination is used to mark shadow stacks */ + WARN_ON_ONCE((pgprot_val(pgprot) & (_PAGE_DIRTY | _PAGE_RW)) == + _PAGE_DIRTY); pfn ^= protnone_mask(pgprot_val(pgprot)); pfn &= PTE_PFN_MASK; return __pte(pfn | check_pgprot(pgprot)); @@ -1056,22 +1059,6 @@ static inline unsigned long pmd_page_vaddr(pmd_t pmd) */ #define pmd_page(pmd) pfn_to_page(pmd_pfn(pmd)) -/* - * Conversion functions: convert a page and protection to a page entry, - * and a page entry and page directory to the page they refer to. - * - * (Currently stuck as a macro because of indirect forward reference - * to linux/mm.h:page_to_nid()) - */ -#define mk_pte(page, pgprot) \ -({ \ - pgprot_t __pgprot = pgprot; \ - \ - WARN_ON_ONCE((pgprot_val(__pgprot) & (_PAGE_DIRTY | _PAGE_RW)) == \ - _PAGE_DIRTY); \ - pfn_pte(page_to_pfn(page), __pgprot); \ -}) - static inline int pmd_bad(pmd_t pmd) { return (pmd_flags(pmd) & ~(_PAGE_USER | _PAGE_ACCESSED)) != From patchwork Wed Aug 14 15:44:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 13763656 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 B9A3DC52D7B for ; Wed, 14 Aug 2024 15:44:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EB05A6B007B; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D49DA6B008C; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 938D16B007B; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 5169B6B0088 for ; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id EA87440C33 for ; Wed, 14 Aug 2024 15:44:37 +0000 (UTC) X-FDA: 82451273394.21.789A5A7 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf22.hostedemail.com (Postfix) with ESMTP id AC3FBC000B for ; Wed, 14 Aug 2024 15:44:35 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=dIsNq+CQ; spf=none (imf22.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723650240; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=33UCl0Co8i3PNxF7TNO2g0opNXJUnYgo70pV3HV1tcI=; b=tfrd+/olryHVDrPhbsrSg7dJzgszjQzz9CWKCedooUmEyV/mlCuPGq9S/Wasgxl7e1G2QQ 7zoN2CCyJxviRqXlz3Cfl+bVvhGoYGWFKrdn3VA0NyyyXPN76P+xfnFhDnA3b1sZof+95E RnDfyTh1rWPsLsK826qjyrhwkW41hvs= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=dIsNq+CQ; spf=none (imf22.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723650240; a=rsa-sha256; cv=none; b=aMC9i0wdQ0wLRyjGJfYfQcfIEQfagtMVmf1f/tATRypfoo2aCNNmHX0jqluC7AZCQxdtZQ EJTJqSvzxRSd788IPUfPZNxGWIobP2AEydG9/Q1fPDCdiMZE3Pm84R9nrTffWeSRcbt/Xr olXBhhxLPiZtDQuFe1uVlyGfPPEg+J4= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=33UCl0Co8i3PNxF7TNO2g0opNXJUnYgo70pV3HV1tcI=; b=dIsNq+CQflIlXtOXmQTqb8pXRY oZqzwxIWI5YvxpP4/j2cyaUs/F+SRrHagsggKoL0vGKsexxHrjHORIlOlRnWyWreUtLEU384QLk7G 9xy/Kq44WGvy3tBpQggevSL4bfHSCSHK+R+SUs/YM7Nq45lxf5DNRTk/qNcXE+6Z4ZtOpYtr7rcUD /NZqx1otFZnfV8ukq8ni6hn+tG1lztLatVpBF+aeWCIRciarfr/XjIMiMWU7tm+LCY2pCLlsCstZF 6gTHeQMb7xlQmbogxzWyxViBZBTk2F5stHLfKgnMSLhKKvWud5/XOuKxAevKTe+B0jdBaHDVIDD/c JGh0gQFA==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1seGAs-00000000gHM-11f1; Wed, 14 Aug 2024 15:44:34 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-arch@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" , linux-s390@vger.kernel.org, linux-um@lists.infradead.org, x86@kernel.org Subject: [PATCH 3/5] um: Remove custom definition of mk_pte() Date: Wed, 14 Aug 2024 16:44:23 +0100 Message-ID: <20240814154427.162475-4-willy@infradead.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240814154427.162475-1-willy@infradead.org> References: <20240814154427.162475-1-willy@infradead.org> MIME-Version: 1.0 X-Rspamd-Server: rspam03 X-Rspam-User: X-Rspamd-Queue-Id: AC3FBC000B X-Stat-Signature: t7npis811yze1xpa3eccugr97e749pja X-HE-Tag: 1723650275-168382 X-HE-Meta: U2FsdGVkX19giCp1E/QtQN39M+ZGUECLgk4YD3n9yyHzA+qAVjPDTnpTtUgSeE+uuS53fpJSwCDgnLbn3i6j2yfCkJAZ7CVdABim676CdBXOdyyQudLrIhw9GsIazp0gK8LQfaEKsEdlSiqRv2mW/+163O7P+i1Ch+mY+YEcF5aCyka1OgTGUq7uxwhpwnMPS4i2pZAtYhMzCzqEq0gtEKlUH5y4zabCamgkD92iJ/5qm01xsHXTveg+e28d1dfcGLqc+BmZ/vQ0GuwMzieP3NiROY8aUiiOp9eSxux9CWi/zxC+0yUKRU5vPM4PtiX1Lq2HiQrJPP1/b1Ctr6dWwT6j1hxGWODIs/ydoUDHuFKdhMENDK3J+vlo6yr0dGJmQ55WgGDnm9F8nmSwV5Mwu/r04irk6WZFQ4dKPmq1X436R0L6Dcf0Vd5KkTEIgSMkXZj+/TmlSgm0e0DDog4PPjyrDAucO2QPmurswT33nl9PDTUxlCP0bMihRbNINbMHG8FnrERhMsiF2ZmiteEjF2jItUaCRTrNB3/5n284ZBX3+xcQ0Yj5vxxUvO4kVC+FzSYmBUfVhk6QJzpsJsxrCk5TZfpL3U1M24fdUiIS8CouvXbb6l9hrp1ILsxCNqNFatNw+GTZNUTr4X4UcDUazFXaDMwgCsCXkdu8ZNO+yP7WMs4jz8VfuhBdWAhOr5HB/eRSQz8qP88HZ0TmbjPaZqIEXXoGkD4utaunV/cjQ0uZNhE7VXxOx0p4CgmAzcb0RUHFrv+ByY5yPBpaX/axi7TJCygHIUbIJo7j8LhT2U6x61qekZdlW79seX9rQIht1jGOhRwgGHMg9K9gH7E3cPIUHNFQH7fLsX3bBiYxZ6evO05OfMVtAWjqHkhqVJxxdaX+uct+hTZ80wrGvwAxN6BtUHAMpzbvuO5nlmIy2PQScCyOSIXQEj9UZrguhBA+ZPcFWxRYtVNPAb5AXsl 4qBEFqS0 qLYr8Nb/79oq3Isjh9kOF8cuFYabeydeJSyaslVAUFAP8TPlM7oBcEqSJXW1Wt8sJ/Pa1LJ37skWW85XKHjxf9cLVFLkTF4wEHYdWRk6iMHMJeaRy2j4shbfjis/eCd1wiTZQhBwLD5Qm5peB6jBeizvuNmSw3u4zHMqcueS/qEpz47+kWYvJBc6IJd5RfZzOf86PadSmv4lT+J0WJfys7UYzPquYiAKN02tq4qvnQSNbKcBQEtvRnJbspk/bjf12zQna2cDYvwndV4g= 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: Move the pfn_pte() definitions from the 2level and 3level files to the generic pgtable.h, move the setting of newprot and newpage bits into pfn_pte() and delete the custom definition of mk_pte() so that we use the central definition. Signed-off-by: Matthew Wilcox (Oracle) --- arch/um/include/asm/pgtable-2level.h | 1 - arch/um/include/asm/pgtable-3level.h | 9 --------- arch/um/include/asm/pgtable.h | 17 ++++++++++------- 3 files changed, 10 insertions(+), 17 deletions(-) diff --git a/arch/um/include/asm/pgtable-2level.h b/arch/um/include/asm/pgtable-2level.h index 8256ecc5b919..2be7ba470abb 100644 --- a/arch/um/include/asm/pgtable-2level.h +++ b/arch/um/include/asm/pgtable-2level.h @@ -37,7 +37,6 @@ static inline void pgd_mkuptodate(pgd_t pgd) { } #define set_pmd(pmdptr, pmdval) (*(pmdptr) = (pmdval)) #define pte_pfn(x) phys_to_pfn(pte_val(x)) -#define pfn_pte(pfn, prot) __pte(pfn_to_phys(pfn) | pgprot_val(prot)) #define pfn_pmd(pfn, prot) __pmd(pfn_to_phys(pfn) | pgprot_val(prot)) #endif diff --git a/arch/um/include/asm/pgtable-3level.h b/arch/um/include/asm/pgtable-3level.h index 8a5032ec231f..20870be83cfa 100644 --- a/arch/um/include/asm/pgtable-3level.h +++ b/arch/um/include/asm/pgtable-3level.h @@ -82,15 +82,6 @@ static inline unsigned long pte_pfn(pte_t pte) return phys_to_pfn(pte_val(pte)); } -static inline pte_t pfn_pte(unsigned long page_nr, pgprot_t pgprot) -{ - pte_t pte; - phys_t phys = pfn_to_phys(page_nr); - - pte_set_val(pte, phys, pgprot); - return pte; -} - static inline pmd_t pfn_pmd(unsigned long page_nr, pgprot_t pgprot) { return __pmd((page_nr << PAGE_SHIFT) | pgprot_val(pgprot)); diff --git a/arch/um/include/asm/pgtable.h b/arch/um/include/asm/pgtable.h index 5bb397b65efb..6ecc4c4ffeab 100644 --- a/arch/um/include/asm/pgtable.h +++ b/arch/um/include/asm/pgtable.h @@ -292,13 +292,16 @@ static inline int pte_same(pte_t pte_a, pte_t pte_b) #define page_to_phys(page) pfn_to_phys(page_to_pfn(page)) #define virt_to_page(addr) __virt_to_page((const unsigned long) addr) -#define mk_pte(page, pgprot) \ - ({ pte_t pte; \ - \ - pte_set_val(pte, page_to_phys(page), (pgprot)); \ - if (pte_present(pte)) \ - pte_mknewprot(pte_mknewpage(pte)); \ - pte;}) +static inline pte_t pfn_pte(unsigned long pfn, pgprot_t pgprot) +{ + pte_t pte; + + pte_set_val(pte, pfn * PAGE_SIZE, pgprot); + if (pte_present(pte)) + pte_mknewprot(pte_mknewpage(pte)); + + return pte; +} static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { From patchwork Wed Aug 14 15:44:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 13763658 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 75787C52D7D for ; Wed, 14 Aug 2024 15:44:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BC9386B0089; Wed, 14 Aug 2024 11:44:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ADA056B008A; Wed, 14 Aug 2024 11:44:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8B7816B008C; Wed, 14 Aug 2024 11:44:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 671DA6B0089 for ; Wed, 14 Aug 2024 11:44:39 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 25CC2A0FE7 for ; Wed, 14 Aug 2024 15:44:39 +0000 (UTC) X-FDA: 82451273478.22.2C5CE6B Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf29.hostedemail.com (Postfix) with ESMTP id 8C2BC12001F for ; Wed, 14 Aug 2024 15:44:37 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=eHUARuZI; dmarc=none; spf=none (imf29.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723650219; a=rsa-sha256; cv=none; b=m30u7VhmDUi/dhe0Od+j61dhiSsGXAbrnQZAWBNS/LkfsgWoNVSlbZ5lR9KWrkH5oz/fdr gbK+WBDonDm0qoOGg7b4V8vDcPaC3v3yUCPuvJHOb4i1d63V8nQZmImdmldGDahPSS4m2s TZXkQjlzRiIF8ukoKzVJWPyNCGIFRgU= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=eHUARuZI; dmarc=none; spf=none (imf29.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723650219; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=RiQi1xwu7xn6bnJpfQHAtVQLm2/6ihErCEfVj9tkBvo=; b=TVeMKtbohFtn3EfOxsVM4OMDFW+jTngBkIIh+WwgYpY5wFePj6XMYA5kUKwcmKKSvxh8fb li3rYCMpvxp5JpXc7t4M4zJQCEaCwzWWu6Xnu5c8czUVVt3dETK8+GQKL42TL3BUUPQ8yj PGfg5uVzOcACqikxNr9jPgqi+6/qKCA= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=RiQi1xwu7xn6bnJpfQHAtVQLm2/6ihErCEfVj9tkBvo=; b=eHUARuZI/k2Siw5xMucTFO1tFs 05neo4SYQKbnin4Egz7zuBogKPG7eGd9qUe7d4gppGr4IWqI61e9aBFE0AMunOrIKk369OGVndms1 9RaI4Kvd8Hw6ZxPySlCYJ9s5YkPUOWlsq11SKMfD40O2Q9Ik/HDtitTLPVqcHmFnclYyvmjKD+7Ct oF+1Ux/f0lDn/OUtQAziz0DQupDEF0WHKsIVzAN5EUjXqCZhBKwAr1Oqn2ubs+PYN6cGLQYDKbgha LK0VRLXkQXOb7gRUbIOhFqZMEhlXSt6QSbUkVgKguotrrcms4P06UNwWnMMeMAk8rfvoAYzYdVEN1 1vZAwaZw==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1seGAs-00000000gHU-1YgC; Wed, 14 Aug 2024 15:44:34 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-arch@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" , linux-s390@vger.kernel.org, linux-um@lists.infradead.org, x86@kernel.org Subject: [PATCH 4/5] s390: Remove custom definition of mk_pte() Date: Wed, 14 Aug 2024 16:44:24 +0100 Message-ID: <20240814154427.162475-5-willy@infradead.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240814154427.162475-1-willy@infradead.org> References: <20240814154427.162475-1-willy@infradead.org> MIME-Version: 1.0 X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 8C2BC12001F X-Stat-Signature: k8668sqiohk9k9xcq3hbhek3zhj1r8w5 X-Rspam-User: X-HE-Tag: 1723650277-134520 X-HE-Meta: U2FsdGVkX1/aXTb1Mr/TfR4HGk4m+RS6UmXYydywDQyt+8BaPmLs6o1RgdW34p3YS6jjimLFhw0JVimbrS3GAWhJIENAbeW18PAPb+4DQBIAJ/Ab8WG0BIwjoPHBulvsAD1s8j8Ir0L2vRHlSKRtmHWVidAsvcBDArNvsG+o3Wuak3C2322wLpkm7jR+J+rc5jDVvw8eOpAg2PtthLDVrE9LBwVOmkkdpJ/N9Ql0IZFTrpHIaQDi93E0VEpmQPNGrIVbeSMf9rZ7q+KI3rdW2ToxmF+AK4BSNo5s1eSDEH0/vDSKYcsKti0ClV/He62By/CDn1qrsOmNadjVvopk4s7BexAQP0XKV399G1/xba4+Cyy6rCVKy9OSG2hS+I1Qni0D7fYuKUxBChhN9S3RCDfS1r968Es+RMo0XgqrmzBTmCBLgackDkGA393nb/VR/4Mv4QMhfQEaS5cS3DgJzrwyqZvAg8MWcbzbd1Tu2mjrIAt3SXC0Fk9cxpwc7lDd4pVo4ERO6hdkPl5rThBg0pbXah5tFXfPQLADkLeM2UloNWQkhxgG1U/KJzKAuPoILFzI+CT7c6LJ3G3Gxh9IqGUAIMYvtkelx2Im5J75OBe1looVYEYh/+XzMWJOp+koBO2llGtVg4vpBgxtb4UfnHWtFas6U2Qt56S2wuk1F3gZQSsj7yZwn0SROIDmUP/Ky8sSqL6T25zpE9HdMa1if/YQWOzF2EFZLFBdmjgkrb0Ffkc1lC+5kOTzW+5/GxmvnXW5Q+f80/5Zq81oqJ/40D0ZrJAXXr881qkISOjABYHj2WjUR/Qe4S/YtGT+k3GVpKYzPReGgYzt447AE1JEYO3LMPGEK7pCGWpayC/SrTA72iFTiH3Gzy6FN/bzlIlbRejqDNKuupeILgYRDBhrIPkr9QswJ11v/1inyExKkzaCwC/UOKTCPdKir55s1sQyMVw+F1JCufVKWUJIdxm nh+Lst3m L1scqA8NuUgpmHwM4kfWIQj5wJuqQANTfIkW8uqOcI49614+bKIKDGV0Q0x7gMpWSPtUaTkWtjdz633zoAqBezu/nh6x8fY3S561A7r7cuGNBY07o51+66WYaTf9kr4FN/OC2fQx/U1sOZzUH87UC4+HUOr74b1Uwx4Rv+nGIaSLPO/VR8hNpWZ/j3G+zJgsbgcnsmTgA5DoSd6/DCWi8F2xno/ZpMWL7vGVeQhN6leVrt2SPVlr9UxNZ6k7Sb5juxXcd 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: I believe the test for PageDirty() is no longer needed. The commit adding it was abf09bed3cce with the rationale that this avoided faults for tmpfs and shmem pages. shmem does not mark newly allocated folios as dirty since 2016 (commit 75edd345e8ed) so this test has been ineffective since then. Signed-off-by: Matthew Wilcox (Oracle) --- arch/s390/include/asm/pgtable.h | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/arch/s390/include/asm/pgtable.h b/arch/s390/include/asm/pgtable.h index 6a21d947a687..1bb7f33394d0 100644 --- a/arch/s390/include/asm/pgtable.h +++ b/arch/s390/include/asm/pgtable.h @@ -1413,17 +1413,6 @@ static inline pte_t mk_pte_phys(unsigned long physpage, pgprot_t pgprot) return pte_mkyoung(__pte); } -static inline pte_t mk_pte(struct page *page, pgprot_t pgprot) -{ - unsigned long physpage = page_to_phys(page); - pte_t __pte = mk_pte_phys(physpage, pgprot); - - if (pte_write(__pte) && PageDirty(page)) - __pte = pte_mkdirty(__pte); - return __pte; -} -#define mk_pte mk_pte - #define pgd_index(address) (((address) >> PGDIR_SHIFT) & (PTRS_PER_PGD-1)) #define p4d_index(address) (((address) >> P4D_SHIFT) & (PTRS_PER_P4D-1)) #define pud_index(address) (((address) >> PUD_SHIFT) & (PTRS_PER_PUD-1)) From patchwork Wed Aug 14 15:44:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 13763654 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 0E5C5C52D7B for ; Wed, 14 Aug 2024 15:44:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 93C146B0092; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 890F86B0082; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 730036B008A; Wed, 14 Aug 2024 11:44:38 -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 50B196B0082 for ; Wed, 14 Aug 2024 11:44:38 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id F068B121079 for ; Wed, 14 Aug 2024 15:44:37 +0000 (UTC) X-FDA: 82451273394.17.44C11D1 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf15.hostedemail.com (Postfix) with ESMTP id 3E766A000B for ; Wed, 14 Aug 2024 15:44:36 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=vm4v2bc1; spf=none (imf15.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723650205; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ImVhDDZvGKdMvHRXKWtBY7b1k/mxkNbLUAPdKjzQZA4=; b=Eu5UBeLGfRLABclu3/3j3hnRXcDIehMrIOerwDBGS5rLYzOOjMpC3tscs7FuTKBGLAsfGR Jx9mnWX0vrzU3hYKTAtOE8p1pT1ZllllLCLg7SzGSBd+rD0DEO9RBrPIAsmaK/o+mpiHpu Dict+M8iNyvHhibOlzP+d51I1VO8Sag= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723650205; a=rsa-sha256; cv=none; b=oAt3JcUOgmoeJGv7J0QPyx4xmbp7nUOlbWFkBI//kyA/1GYg2JmWXE3sLuMj0lUj8syH7I mDAEwZqrLqIu1kkTrhZbtTyBJBhyCDCDU4uwyJU+ET65TdqxQWi5d9qblq3cMBuIzIc0fQ 6Qz+6Tv3vnLQQvvAgq6IlIpaW3unQbw= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=vm4v2bc1; spf=none (imf15.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=ImVhDDZvGKdMvHRXKWtBY7b1k/mxkNbLUAPdKjzQZA4=; b=vm4v2bc1RJWujLJZeuHTO2tTsQ r9TLvhRGZHshO+cnttcm3iLy974IWx6T811ohmQwtnkXjc3sCZkSRvrTVT/gR9nkri6yeC707ghwJ Bh1bmjfmYR0tTcecAL4mF+rr6iy3ahkAozOJf1TqTanDkuXZmQXqfPxMOfu2lC3wBDD1Bl2AxnxTi tLvueUBRhx2Yljo6YI2vWB60Ha40L4FgOjsz7Ly3zHPmvRBwfRbjAJgWdFcwILeE/J2+nWDSyaOxr WowQrt9wNTEQv7Go8sxdc2Qep7gI0w3W6K+x60EZuFdRON7IxbDs6/aVGC1P2klBWA8+azfqVgUVj SOSl8zGQ==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1seGAs-00000000gHd-25s5; Wed, 14 Aug 2024 15:44:34 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-arch@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" , linux-s390@vger.kernel.org, linux-um@lists.infradead.org, x86@kernel.org Subject: [PATCH 5/5] mm: Make mk_pte() definition unconditional Date: Wed, 14 Aug 2024 16:44:25 +0100 Message-ID: <20240814154427.162475-6-willy@infradead.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240814154427.162475-1-willy@infradead.org> References: <20240814154427.162475-1-willy@infradead.org> MIME-Version: 1.0 X-Rspamd-Queue-Id: 3E766A000B X-Stat-Signature: x8g6qt1rfwupqi4fiefsqwf63z66i6o5 X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1723650276-317149 X-HE-Meta: U2FsdGVkX18SgoMSkW9R6dPzKbJsAfxvFpU1ag4Cmi9gdIwezc6iN2q6RjlpuRr36hk+Cz2y3iX6zNDzQRW3XfjWSz/Wdc2nUkHIl342GV+lK7hSflLCHIqiyFMEP34F6vSJ/5rYgCc5sh3PbFhlwoGXW4iS8Np/QMhYO+7hWuvB1i4vwZmJA3CTZO4G111G4af+l6gEb8EiHaSIejsny1bMoAMRxQSYE249XtFGWDz9PhXzLi7K7mXECebiVUPPY5DTba/NWKGswcfwrFSz4rm9VqGg9DBw6Zc0HiXbvdLIFAe75Cj8hsRqublQ6HrGg0tmzzlRGzqVyuIHfOjazXKv8GAxLOQPeV27vGW5Vl34jcn0fOT99MjhYDQ/FQXp7Xqk+oPsboIetol/70anJU7yBUjTUDDXeF7RXoMiSruBppMkigvaQyRRLFzVggYZmXZ7XPgFCwQ+VSY1lUZJhdbGj1x+GNLfaRLzZOQVyCCZ4E7/w8dDFp/j8aoxv4jjdBelBj99rraH+7bgXIbaxecE/sZY/J+xqMT5eLLCc3IOgFVC3D9bIz6Ob+qV7jwRhPjF1Ole5h9pN8s+08WB2l2KT71iI6Hj0obo/75fjC9biM4/gWMKZQfhniN4a9zYdXO8sraDhsPlfJ1cZbj0c1lHD4H5qc5rXDItuqwFw/iAkO6YihqyE+BrtamQ+DD6z63xlzzaBENZyd9eI3sURDCrHxsJgKQlg6jQM5Eb9gliSnAwLmyfgvJNHetplWAsF/c7S2H/bXQq3ilyraDoSpRBHwi/Lu4eLwaKnB1nBnZbPMPkT7Qk5gM75zvkZ6fF2MuQ6ROcWY/6tRHsKPbNHUYxcdP5+lbkbBvn/69XCas2oSjRnGjV0CBCroobvDQavnPXhzPhLX3p11GjIPS9rdORXAWv9ofdvRXesB878I6LaTcVXlcc53JaIjX983t7vp9P0qpN2dyYIWJrPeM aKTQFFWe a2xNKgBrBiC4XGZSLIQVCptv/u2PdYrWj3xPVtYbu/BXexShYJoUtkQ4UiqWxYEnBetyIsKnM8VPDgAzXF1gzkbxz4//HShoFbW0LPvqDuO9WPepho5jNOT5DUHIK7lLNzyrORS6BCcXE3irg3UqcfbmLxyOR1e9e9RCQfWfCurm95NE8QjZbnlHjcjqJdfF5CSD5obyzI6GWSXGHhv/PHV8XNwl/8+2Wd5R6EliCxKeYV7Jb7AgfteBS2UKtMgohJZOP 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: All architectures now use the common mk_pte() definition, so we can remove the condition. Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/pgtable.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index 8204ffd87d74..1d46422b79cc 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -41,12 +41,10 @@ #define FIRST_USER_ADDRESS 0UL #endif -#ifndef mk_pte static inline pte_t mk_pte(struct page *page, pgprot_t pgprot) { return pfn_pte(page_to_pfn(page), pgprot); } -#endif /* * This defines the generic helper for accessing PMD page