The shared get_futex_key code does not work on nommu, but is not needed anyway because it's impossible for a given backing to have multiple distinct virtual addresses on nommu. Simply disable these code paths by refraining from setting FLAG_SHARED when CONFIG_MMU is not enabled.
Signed-off-by: Rich Felker <[email protected]> --- kernel/futex.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/futex.c b/kernel/futex.c index a5d2e74..ed6f475 100644 --- a/kernel/futex.c +++ b/kernel/futex.c @@ -3131,8 +3131,10 @@ long do_futex(u32 __user *uaddr, int op, u32 val, ktime_t *timeout, int cmd = op & FUTEX_CMD_MASK; unsigned int flags = 0; +#ifdef CONFIG_MMU if (!(op & FUTEX_PRIVATE_FLAG)) flags |= FLAGS_SHARED; +#endif if (op & FUTEX_CLOCK_REALTIME) { flags |= FLAGS_CLOCKRT; -- 2.8.1

