ARC: syscall for userspace cmpxchg assist
authorVineet Gupta <vgupta@synopsys.com>
Thu, 20 Oct 2016 14:39:45 +0000 (07:39 -0700)
committerVineet Gupta <vgupta@synopsys.com>
Mon, 24 Oct 2016 16:24:26 +0000 (09:24 -0700)
commit91e040a79df73d371f70792f30380d4e44805250
treeb2732eadb60fc5575c465a81cc637a899330c1b5
parent1dec78585328db00e33fb18dc1a6deed0e2095a5
ARC: syscall for userspace cmpxchg assist

Older ARC700 cores (ARC750 specifically) lack instructions to implement
atomic r-w-w. This is problematic for userspace libraries such as NPTL
which need atomic primitives. So enable them by providing kernel assist.
This is costly but really the only sane soluton (othern than tight
spinning using the otherwise availiable atomic exchange EX instruciton).

Good thing is there are only a few of these cores running Linux out in
the wild.

This only works on UP systems.

Reviewed-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
arch/arc/include/asm/syscalls.h
arch/arc/include/uapi/asm/unistd.h
arch/arc/kernel/process.c