Message ID | 1571822941-29776-1-git-send-email-rppt@kernel.org (mailing list archive) |
---|---|
Headers | show
Return-Path: <SRS0=xlWz=YQ=kvack.org=owner-linux-mm@kernel.org> Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E8DA91390 for <patchwork-linux-mm@patchwork.kernel.org>; Wed, 23 Oct 2019 09:29:22 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id A884621920 for <patchwork-linux-mm@patchwork.kernel.org>; Wed, 23 Oct 2019 09:29:22 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="zm0uBOlL" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A884621920 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id D60BD6B0003; Wed, 23 Oct 2019 05:29:21 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id CEA056B0006; Wed, 23 Oct 2019 05:29:21 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B8A116B0007; Wed, 23 Oct 2019 05:29:21 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0063.hostedemail.com [216.40.44.63]) by kanga.kvack.org (Postfix) with ESMTP id 914B86B0003 for <linux-mm@kvack.org>; Wed, 23 Oct 2019 05:29:21 -0400 (EDT) Received: from smtpin23.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with SMTP id 40C36A760 for <linux-mm@kvack.org>; Wed, 23 Oct 2019 09:29:21 +0000 (UTC) X-FDA: 76074526122.23.crib12_8bca845ef8907 X-Spam-Summary: 2,0,0,748add0d1e87c8eb,d41d8cd98f00b204,rppt@kernel.org,::akpm@linux-foundation.org:anton.ivanov@cambridgegreys.com:arnd@arndb.de:davem@davemloft.net:geert@linux-m68k.org:green.hu@gmail.com:gerg@linux-m68k.org:deller@gmx.de:james.bottomley@hansenpartnership.com:jdike@addtoit.com:kirill@shutemov.name:torvalds@linux-foundation.org:msalter@redhat.com:mattst88@gmail.com:monstr@monstr.eu:richard@nod.at:linux@armlinux.org.uk:sammy@sammy.net:deanbo422@gmail.com:vineet.gupta1@synopsys.com:rppt@kernel.org:linux-alpha@vger.kernel.org:linux-arch@vger.kernel.org:linux-arm-kernel@lists.infradead.org:linux-c6x-dev@linux-c6x.org:linux-kernel@vger.kernel.org:linux-m68k@lists.linux-m68k.org:linux-parisc@vger.kernel.org:linux-um@lists.infradead.org:sparclinux@vger.kernel.org:rppt@linux.ibm.com,RULES_HIT:2:41:69:355:379:541:800:960:967:968:973:988:989:1260:1345:1437:1535:1606:1730:1747:1777:1792:1801:1981:2194:2199:2393:2525:2559:2563:2682:2685:2859:2933:2937:2939:2942:2945:2947 :2951:29 X-HE-Tag: crib12_8bca845ef8907 X-Filterd-Recvd-Size: 7303 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by imf06.hostedemail.com (Postfix) with ESMTP for <linux-mm@kvack.org>; Wed, 23 Oct 2019 09:29:20 +0000 (UTC) Received: from aquarius.haifa.ibm.com (nesher1.haifa.il.ibm.com [195.110.40.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B40222084C; Wed, 23 Oct 2019 09:29:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1571822959; bh=raTE4gr9LycB90WqNLOaTxg315Bd08RIPvY36znf/Wg=; h=From:To:Cc:Subject:Date:From; b=zm0uBOlLjfNOneCY0DrxNyTGRsQ3RcpYf+NG45sGTTOTNOtYKCaforIBvxuiwMgtG 7d6vROp+GP3SAoxnGfuyqXAZYdXUbwDVVTUSxDMMmDX6/R62chzMD/RoY3d2cnUcVS UeJfPj//kpH9mF/z5mUu+p396QqY/JUmXVcaAJzg= From: Mike Rapoport <rppt@kernel.org> To: linux-mm@kvack.org Cc: Andrew Morton <akpm@linux-foundation.org>, Anton Ivanov <anton.ivanov@cambridgegreys.com>, Arnd Bergmann <arnd@arndb.de>, "David S. Miller" <davem@davemloft.net>, Geert Uytterhoeven <geert@linux-m68k.org>, Greentime Hu <green.hu@gmail.com>, Greg Ungerer <gerg@linux-m68k.org>, Helge Deller <deller@gmx.de>, "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>, Jeff Dike <jdike@addtoit.com>, "Kirill A. Shutemov" <kirill@shutemov.name>, Linus Torvalds <torvalds@linux-foundation.org>, Mark Salter <msalter@redhat.com>, Matt Turner <mattst88@gmail.com>, Michal Simek <monstr@monstr.eu>, Richard Weinberger <richard@nod.at>, Russell King <linux@armlinux.org.uk>, Sam Creasey <sammy@sammy.net>, Vincent Chen <deanbo422@gmail.com>, Vineet Gupta <Vineet.Gupta1@synopsys.com>, Mike Rapoport <rppt@kernel.org>, linux-alpha@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-c6x-dev@linux-c6x.org, linux-kernel@vger.kernel.org, linux-m68k@lists.linux-m68k.org, linux-parisc@vger.kernel.org, linux-um@lists.infradead.org, sparclinux@vger.kernel.org, Mike Rapoport <rppt@linux.ibm.com> Subject: [PATCH 00/12] mm: remove __ARCH_HAS_4LEVEL_HACK Date: Wed, 23 Oct 2019 12:28:49 +0300 Message-Id: <1571822941-29776-1-git-send-email-rppt@kernel.org> X-Mailer: git-send-email 2.7.4 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: <linux-mm.kvack.org> |
Series |
mm: remove __ARCH_HAS_4LEVEL_HACK
|
expand
|
On Wed, Oct 23, 2019 at 5:29 AM Mike Rapoport <rppt@kernel.org> wrote: > > These patches convert several architectures to use page table folding and > remove __ARCH_HAS_4LEVEL_HACK along with include/asm-generic/4level-fixup.h. Thanks for doing this. The patches look sane from a quick scan, and it's definitely the right thing to do. So ack on my part, but obviously testing the different architectures would be a really good thing... Linus
From: Mike Rapoport <rppt@linux.ibm.com> Hi, These patches convert several architectures to use page table folding and remove __ARCH_HAS_4LEVEL_HACK along with include/asm-generic/4level-fixup.h. For the nommu configurations the folding is already implemented by the generic code so the only change was to use the appropriate header file. As for the rest, the changes are mostly about mechanical replacement of pgd accessors with pud/pmd ones and the addition of higher levels to page table traversals. With Vineet's patches from "elide extraneous generated code for folded p4d/pud/pmd" series [1] there is a small shrink of the kernel size of about -0.01% for the defconfig build. The set is boot-tested on UML, qemu-{alpha,sparc} and aranym. [1] https://lore.kernel.org/lkml/20191016162400.14796-1-vgupta@synopsys.com Mike Rapoport (12): alpha: use pgtable-nop4d instead of 4level-fixup arm: nommu: use pgtable-nopud instead of 4level-fixup c6x: use pgtable-nopud instead of 4level-fixup m68k: nommu: use pgtable-nopud instead of 4level-fixup m68k: mm: use pgtable-nopXd instead of 4level-fixup microblaze: use pgtable-nopmd instead of 4level-fixup nds32: use pgtable-nopmd instead of 4level-fixup parisc: use pgtable-nopXd instead of 4level-fixup sparc32: use pgtable-nopud instead of 4level-fixup um: remove unused pxx_offset_proc() and addr_pte() functions um: add support for folded p4d page tables mm: remove __ARCH_HAS_4LEVEL_HACK and include/asm-generic/4level-fixup.h arch/alpha/include/asm/pgalloc.h | 4 +- arch/alpha/include/asm/pgtable.h | 24 ++++----- arch/alpha/mm/init.c | 12 +++-- arch/arm/include/asm/pgtable.h | 2 +- arch/c6x/include/asm/pgtable.h | 2 +- arch/m68k/include/asm/mcf_pgalloc.h | 7 --- arch/m68k/include/asm/mcf_pgtable.h | 28 ++++------- arch/m68k/include/asm/mmu_context.h | 12 ++++- arch/m68k/include/asm/motorola_pgalloc.h | 4 +- arch/m68k/include/asm/motorola_pgtable.h | 32 +++++++----- arch/m68k/include/asm/page.h | 9 ++-- arch/m68k/include/asm/pgtable_mm.h | 11 +++-- arch/m68k/include/asm/pgtable_no.h | 2 +- arch/m68k/include/asm/sun3_pgalloc.h | 5 -- arch/m68k/include/asm/sun3_pgtable.h | 18 ------- arch/m68k/kernel/sys_m68k.c | 10 +++- arch/m68k/mm/init.c | 6 ++- arch/m68k/mm/kmap.c | 36 ++++++++++---- arch/m68k/mm/mcfmmu.c | 16 +++++- arch/m68k/mm/motorola.c | 17 ++++--- arch/microblaze/include/asm/page.h | 3 -- arch/microblaze/include/asm/pgalloc.h | 16 ------ arch/microblaze/include/asm/pgtable.h | 32 +----------- arch/microblaze/kernel/signal.c | 10 ++-- arch/microblaze/mm/init.c | 7 ++- arch/microblaze/mm/pgtable.c | 13 ++++- arch/nds32/include/asm/page.h | 3 -- arch/nds32/include/asm/pgalloc.h | 3 -- arch/nds32/include/asm/pgtable.h | 12 +---- arch/nds32/include/asm/tlb.h | 1 - arch/nds32/kernel/pm.c | 4 +- arch/nds32/mm/fault.c | 16 ++++-- arch/nds32/mm/init.c | 11 +++-- arch/nds32/mm/mm-nds32.c | 6 ++- arch/nds32/mm/proc.c | 26 ++++++---- arch/parisc/include/asm/page.h | 30 ++++++----- arch/parisc/include/asm/pgalloc.h | 41 ++++++--------- arch/parisc/include/asm/pgtable.h | 52 ++++++++++--------- arch/parisc/include/asm/tlb.h | 2 + arch/parisc/kernel/cache.c | 13 +++-- arch/parisc/kernel/pci-dma.c | 9 +++- arch/parisc/mm/fixmap.c | 10 ++-- arch/sparc/include/asm/pgalloc_32.h | 6 +-- arch/sparc/include/asm/pgtable_32.h | 28 +++++------ arch/sparc/mm/fault_32.c | 11 ++++- arch/sparc/mm/highmem.c | 6 ++- arch/sparc/mm/io-unit.c | 6 ++- arch/sparc/mm/iommu.c | 6 ++- arch/sparc/mm/srmmu.c | 51 ++++++++++++++----- arch/um/include/asm/pgtable-2level.h | 1 - arch/um/include/asm/pgtable-3level.h | 1 - arch/um/include/asm/pgtable.h | 3 ++ arch/um/kernel/mem.c | 25 +++++++++- arch/um/kernel/skas/mmu.c | 12 ++++- arch/um/kernel/skas/uaccess.c | 7 ++- arch/um/kernel/tlb.c | 85 +++++++++++++++++++------------- arch/um/kernel/trap.c | 4 +- include/asm-generic/4level-fixup.h | 40 --------------- include/asm-generic/tlb.h | 2 - include/linux/mm.h | 10 ++-- mm/memory.c | 8 --- 61 files changed, 481 insertions(+), 408 deletions(-) delete mode 100644 include/asm-generic/4level-fixup.h