Re: [PATCH 04/12] m68k: nommu: use pgtable-nopud instead of 4level-fixup
From: Greg Ungerer <gerg@linux-m68k.org>
Date: 2019-10-24 06:23:16
Also in:
linux-alpha, linux-arch, linux-mm, linux-um, lkml, sparclinux
Hi Mike, On 24/10/19 3:35 pm, Mike Rapoport wrote:
quoted hunk ↗ jump to hunk
Hi Greg, On Thu, Oct 24, 2019 at 02:09:01PM +1000, Greg Ungerer wrote:quoted
Hi Mike, On 23/10/19 7:28 pm, Mike Rapoport wrote:quoted
From: Mike Rapoport <redacted> The generic nommu implementation of page table manipulation takes care of folding of the upper levels and does not require fixups. Simply replace of include/asm-generic/4level-fixup.h with include/asm-generic/pgtable-nopud.h. Signed-off-by: Mike Rapoport <redacted> --- arch/m68k/include/asm/pgtable_no.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/arch/m68k/include/asm/pgtable_no.h b/arch/m68k/include/asm/pgtable_no.h index c18165b..ccc4568 100644 --- a/arch/m68k/include/asm/pgtable_no.h +++ b/arch/m68k/include/asm/pgtable_no.h@@ -2,7 +2,7 @@ #ifndef _M68KNOMMU_PGTABLE_H #define _M68KNOMMU_PGTABLE_H -#include <asm-generic/4level-fixup.h> +#include <asm-generic/pgtable-nopud.h> /* * (C) Copyright 2000-2002, Greg Ungerer <gerg@snapgear.com>This fails to compile for me (targeting m5208evb_defconfig): CC init/main.o In file included from ./arch/m68k/include/asm/pgtable_no.h:56:0, from ./arch/m68k/include/asm/pgtable.h:3, from ./include/linux/mm.h:99, from ./include/linux/ring_buffer.h:5, from ./include/linux/trace_events.h:6, from ./include/trace/syscall.h:7, from ./include/linux/syscalls.h:85, from init/main.c:21: ./include/asm-generic/pgtable.h:738:34: error: unknown type name ‘pmd_t’ static inline int pmd_soft_dirty(pmd_t pmd) ^...quoted
scripts/Makefile.build:265: recipe for target 'init/main.o' failed make[1]: *** [init/main.o] Error 1 Makefile:1649: recipe for target 'init' failed make: *** [init] Error 2The hunk below fixes the build.diff --git a/arch/m68k/include/asm/page.h b/arch/m68k/include/asm/page.h index c00b67a..05e1e1e 100644 --- a/arch/m68k/include/asm/page.h +++ b/arch/m68k/include/asm/page.h@@ -21,7 +21,7 @@ /* * These are used to make use of C type-checking.. */ -#if CONFIG_PGTABLE_LEVELS == 3 +#if !defined(CONFIG_MMU) || CONFIG_PGTABLE_LEVELS == 3 typedef struct { unsigned long pmd[16]; } pmd_t; #define pmd_val(x) ((&x)->pmd[0]) #define __pmd(x) ((pmd_t) { { (x) }, })
That looks better. Thanks. Tested and working on m68knommu. For the combined patches: Acked-by: Greg Ungerer <gerg@linux-m68k.org> Regards Greg _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel