parisc: Don't disable interrupts in cmpxchg and futex operations
authorDave Anglin <dave.anglin@bell.net>
Wed, 3 Nov 2021 11:49:32 +0000 (12:49 +0100)
committerHelge Deller <deller@gmx.de>
Thu, 4 Nov 2021 10:21:20 +0000 (11:21 +0100)
commit7e992711dddbdb1c27d077432d8440fefd44819f
tree01208b85e053dda7deeb9eac8e3924f62b9ba144
parent014966dcf76bce5717f7d974d0410d3402a651c2
parisc: Don't disable interrupts in cmpxchg and futex operations

I no longer think interrupts can be disabled in the futex and cmpxchg
operations because of COW breaks.  This not ideal but I suspect it's the
best we can do.

For the cmpxchg operations in syscall.S, we rely on the code to not
schedule off the gateway page.  For the futex, I added code to disable
preemption.

So far, I haven't seen the warnings with the attached change but the
change is only lightly tested.

Signed-off-by: Dave Anglin <dave.anglin@bell.net>
Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/include/asm/futex.h
arch/parisc/kernel/syscall.S