summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@libc.org>2016-06-08 21:53:35 +0000
committerRich Felker <dalias@libc.org>2016-06-08 21:53:35 +0000
commit69011b137710ca72ef366332cec92f81f0ef8e5d (patch)
tree78b69892c35910829eb604955cc235b46a0c89a9
parent5e614bb0485c16b252ad8c7f2f60240b04427cab (diff)
downloadlinux-sh-69011b137710ca72ef366332cec92f81f0ef8e5d.tar.gz
sh: fix futex/robust_list on nommu models
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>
-rw-r--r--arch/sh/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 0223e5e1c44f..4fa5894ded1c 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -44,6 +44,7 @@ config SUPERH
select OLD_SIGSUSPEND
select OLD_SIGACTION
select HAVE_ARCH_AUDITSYSCALL
+ select HAVE_FUTEX_CMPXCHG if FUTEX
help
The SuperH is a RISC processor targeted for use in embedded systems
and consumer electronics; it was also used in the Sega Dreamcast