sh: fix futex/robust_list on nommu models
authorRich Felker <dalias@libc.org>
Fri, 15 Jul 2016 03:46:52 +0000 (03:46 +0000)
committerRich Felker <dalias@libc.org>
Sun, 31 Jul 2016 03:33:32 +0000 (03:33 +0000)
The futex cmpxchg runtime testing in kernel/futex.c depends on
accesses to address 0 producing EFAULT, which obviously does not work
on nommu. Since SH always has cmpxchg, disable the broken runtime
detection.

At some point this should be fixed at the kernel/futex.c level. UP
machines can always provide a working cmpxchg with interrupt masking,
and SMP cannot function without a working cmpxchg anyway.

Signed-off-by: Rich Felker <dalias@libc.org>
arch/sh/Kconfig

index ceeda5c1a70a03747a09769e816f1df0ddc6fcb6..e6d88f9e978a3e3404233c280a955fac405c324a 100644 (file)
@@ -45,6 +45,7 @@ config SUPERH
        select OLD_SIGSUSPEND
        select OLD_SIGACTION
        select HAVE_ARCH_AUDITSYSCALL
+       select HAVE_FUTEX_CMPXCHG if FUTEX
        select HAVE_NMI
        help
          The SuperH is a RISC processor targeted for use in embedded systems