locking/rwlock: Provide RT variant
authorThomas Gleixner <tglx@linutronix.de>
Sun, 15 Aug 2021 21:28:28 +0000 (23:28 +0200)
committerIngo Molnar <mingo@kernel.org>
Tue, 17 Aug 2021 15:50:51 +0000 (17:50 +0200)
commit8282947f67345246b4a6344dbceb07484d3d4dad
treeaeb316bc3ec77d94c819bb6bea21e45c7296fcd9
parent0f383b6dc96e976dfbf2721b0bf10bd96103b341
locking/rwlock: Provide RT variant

Similar to rw_semaphores, on RT the rwlock substitution is not writer fair,
because it's not feasible to have a writer inherit its priority to
multiple readers. Readers blocked on a writer follow the normal rules of
priority inheritance. Like RT spinlocks, RT rwlocks are state preserving
across the slow lock operations (contended case).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20210815211303.882793524@linutronix.de
include/linux/rwlock_rt.h [new file with mode: 0644]
include/linux/rwlock_types.h
include/linux/spinlock_rt.h
kernel/Kconfig.locks
kernel/locking/spinlock.c
kernel/locking/spinlock_debug.c
kernel/locking/spinlock_rt.c