On Tue, 20 Jul 2021 at 14:35, Will Deacon <w...@kernel.org> wrote: > > Hi folks, > > Jonathan reports [1] that commit c742199a014d ("mm/pgtable: add stubs > for {pmd/pub}_{set/clear}_huge") breaks the boot on arm64 when huge > mappings are used to map the kernel linear map but the VA size is > configured such that PUDs are folded. This is because the non-functional > pud_set_huge() stub is used to create the linear map, which results in > 1GB holes and a fatal data abort when the kernel attemps to access them. > > Digging further into the issue, it also transpired that huge-vmap is > silently disabled in these configurations as well [2], despite working > correctly in 5.13. The latter issue causes the pgtable selftests to > scream due to a failing consistency check [3]. > > Rather than leave mainline in a terminally broken state for arm64 while > we figure this out, revert the offending commit to get things working > again. Unfortunately, reverting the change in isolation causes a build > breakage for 32-bit PowerPC 8xx machines which recently started relying > on the problematic stubs to support pte-level huge-vmap entries [4]. > Since Christophe is away at the moment, this series first reverts the > PowerPC 8xx change in order to avoid breaking the build. > > I would really like this to land for -rc3 and I can take these via the > arm64 fixes queue if the PowerPC folks are alright with them. > > Cheers, > > Will > > [1] https://lore.kernel.org/r/20210717160118.9855-1-jonat...@marek.ca > [2] https://lore.kernel.org/r/20210719104918.GA6440@willie-the-truck > [3] > https://lore.kernel.org/r/camuhmdxshordox-xxaeufdw3wx2peggfsqhvshvznkcgk-y...@mail.gmail.com/ > [4] > https://lore.kernel.org/r/8b972f1c03fb6bd59953035f0a3e4d26659de4f8.1620795204.git.christophe.le...@csgroup.eu/ > > Cc: Ard Biesheuvel <a...@kernel.org> > Cc: Michael Ellerman <m...@ellerman.id.au> > Cc: Thomas Gleixner <t...@linutronix.de> > Cc: Benjamin Herrenschmidt <b...@kernel.crashing.org> > Cc: Christophe Leroy <christophe.le...@csgroup.eu> > Cc: Paul Mackerras <pau...@samba.org> > Cc: Jonathan Marek <jonat...@marek.ca> > Cc: Catalin Marinas <catalin.mari...@arm.com> > Cc: Andrew Morton <a...@linux-foundation.org> > Cc: Nicholas Piggin <npig...@gmail.com > Cc: Mike Rapoport <r...@kernel.org> > Cc: Mark Rutland <mark.rutl...@arm.com> > Cc: Geert Uytterhoeven <ge...@linux-m68k.org> > Cc: Marc Zyngier <m...@kernel.org> > Cc: linuxppc-dev@lists.ozlabs.org > Cc: linux-arm-ker...@lists.infradead.org > > --->8 > > Jonathan Marek (1): > Revert "mm/pgtable: add stubs for {pmd/pub}_{set/clear}_huge" > > Will Deacon (1): > Revert "powerpc/8xx: add support for huge pages on VMAP and VMALLOC" >
Reviewed-by: Ard Biesheuvel <a...@kernel.org> > arch/arm64/mm/mmu.c | 20 ++++----- > arch/powerpc/Kconfig | 2 +- > arch/powerpc/include/asm/nohash/32/mmu-8xx.h | 43 -------------------- > arch/x86/mm/pgtable.c | 34 +++++++--------- > include/linux/pgtable.h | 26 +----------- > 5 files changed, 25 insertions(+), 100 deletions(-) > > -- > 2.32.0.402.g57bb445576-goog >