Skip to contentSkip to conversation

ARM: avoid ARCH_MMAP_RND_BITS for NOMMU

PATCH In review Arnd Bergmann 3 participants 3 messages Nov 27, 2015 – Dec 7, 2015

Subsystems (2)
lore
Share & tools
lore

Arnd Bergmann

author maintainer
#0 lore raw

PATCH 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.

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
index b64f64d124c4..5a0957e3ea36 100644
@@ -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
#1 lore raw

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 the
arch/$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 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.

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
index b64f64d124c4..5a0957e3ea36 100644
@@ -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
Acked-by on v1 1/1
#2 lore raw
In reply to Arnd Bergmann
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 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.

Quoted 8 lines
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/  |