ARM: avoid ARCH_MMAP_RND_BITS for NOMMU
Subsystems (2)
Arnd Bergmann
maintainerPATCH 1/1 ARM: avoid ARCH_MMAP_RND_BITS for NOMMU
ARM kernels with MMU disabled fail to build because of CONFIG_ARCH_MMAP_RND_BITS:
kernel/built-in.o:(.data+0x754): undefined reference to mmap_rnd_bits' kernel/built-in.o:(.data+0x76c): undefined reference to mmap_rnd_bits_min' kernel/built-in.o:(.data+0x770): undefined reference to `mmap_rnd_bits_max'
This changes the newly added line to only select this allow for MMU-enabled kernels.
---
Found on yesterday's linux-next with ARM randconfig. The commit that introduced this is currently in Andrew's tree.
If you don't already have a fix, please either apply this patch on top, or fold it into the original patch.
arch/arm/Kconfig +1 -1
@@ -34,7 +34,7 @@ config ARM select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6 select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU - select HAVE_ARCH_MMAP_RND_BITS + select HAVE_ARCH_MMAP_RND_BITS if MMU select HAVE_ARCH_SECCOMP_FILTER if (AEABI && !OABI_COMPAT) select HAVE_ARCH_TRACEHOOK select HAVE_BPF_JIT
Thank you for this. I will add this to the recently posted patchset
v4. Without CONFIG_MMU, arch_pick_mmap_layout() is a no-op and thearch/$ARCH/mm/mmap.c source is not included, so this change makes sense. In addition, we should drop the nommu default and add depends-on for the Kconfig portions.
-Dan
Quoted 32 lines · Arnd Bergmann
ARM kernels with MMU disabled fail to build because of
CONFIG_ARCH_MMAP_RND_BITS:kernel/built-in.o:(.data+0x754): undefined reference to
mmap_rnd_bits' kernel/built-in.o:(.data+0x76c): undefined reference tommap_rnd_bits_min' kernel/built-in.o:(.data+0x770): undefined reference to `mmap_rnd_bits_max'This changes the newly added line to only select this allow for MMU-enabled kernels.
Signed-off-by Arnd Bergmann <[email protected]>Fixes 14570b3fd31a ("arm: mm: support ARCH_MMAP_RND_BITS")---
Found on yesterday's linux-next with ARM randconfig. The commit that introduced this is currently in Andrew's tree.If you don't already have a fix, please either apply this patch on top, or fold it into the original patch.
arch/arm/Kconfig +1
-1@@ -34,7 +34,7 @@ config ARM select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6 select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU - select HAVE_ARCH_MMAP_RND_BITS + select HAVE_ARCH_MMAP_RND_BITS if MMU select HAVE_ARCH_SECCOMP_FILTER if (AEABI && !OABI_COMPAT) select HAVE_ARCH_TRACEHOOK select HAVE_BPF_JIT
Signature · 1 line
Dan Cashman
Quoted 9 lines · Arnd Bergmann
ARM kernels with MMU disabled fail to build because of
CONFIG_ARCH_MMAP_RND_BITS:kernel/built-in.o:(.data+0x754): undefined reference to
mmap_rnd_bits' kernel/built-in.o:(.data+0x76c): undefined reference tommap_rnd_bits_min' kernel/built-in.o:(.data+0x770): undefined reference to `mmap_rnd_bits_max'This changes the newly added line to only select this allow for MMU-enabled kernels.
Quoted 8 lines
Signed-off-by Arnd Bergmann <[email protected]>Fixes 14570b3fd31a ("arm: mm: support ARCH_MMAP_RND_BITS")---
Found on yesterday's linux-next with ARM randconfig. The commit that introduced this is currently in Andrew's tree.If you don't already have a fix, please either apply this patch on top, or fold it into the original patch.
hmm, our autobuilder still fails on this one because there has been no next release since some time. I hope the best for tomorrow's build :-)
Anyhow, it fixes the build for efm32_defconfig, so
Best regards
Uwe
Signature · 2 lines
Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ |