um: add a UML specific futex implementation
authorAnton Ivanov <anton.ivanov@cambridgegreys.com>
Fri, 12 Mar 2021 15:16:09 +0000 (15:16 +0000)
committerRichard Weinberger <richard@nod.at>
Thu, 17 Jun 2021 20:01:45 +0000 (22:01 +0200)
commitdd3035a21ba7ccaa883d7107d357ad06320d78fc
tree70f67dc7aa7933b22aa2a38eea3bd5dddd006fb4
parentc0ecca6604b80e438b032578634c6e133c7028f6
um: add a UML specific futex implementation

The generic asm futex implementation emulates atomic access to
memory by doing a get_user followed by put_user. These translate
to two mapping operations on UML with paging enabled in the
meantime. This, in turn may end up changing interrupts,
invoking the signal loop, etc.

This replaces the generic implementation by a mapping followed
by an operation on the mapped segment.

Signed-off-by: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
arch/um/include/asm/Kbuild
arch/um/include/asm/futex.h [new file with mode: 0644]
arch/um/kernel/skas/uaccess.c