Messages in this thread | | | From | Waiman Long <> | Subject | [PATCH v4 0/5] lockinig/rwsem: Fix rwsem bugs & enable true lock handoff | Date | Mon, 24 Oct 2022 13:44:13 -0400 |
| |
v4: - Update patch descriptions in patches 1 & 2 to make clear the live lock conditions that are being fixed by these patches. There is no code change from v3.
v3: - Make a minor cleanup to patch 1. - Add 3 more patches to implement true lock handoff.
It turns out the current waiter optimistic spinning code does not work that well if we have RT tasks in the mix. This patch series include two different fixes to resolve those issues. The last 3 patches modify the handoff code to implement true lock handoff similar to that of mutex.
Waiman Long (5): locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpath locking/rwsem: Limit # of null owner retries for handoff writer locking/rwsem: Change waiter->hanodff_set to a handoff_state enum locking/rwsem: Enable direct rwsem lock handoff locking/rwsem: Update handoff lock events tracking
kernel/locking/lock_events_list.h | 6 +- kernel/locking/rwsem.c | 172 +++++++++++++++++++++++------- 2 files changed, 138 insertions(+), 40 deletions(-)
-- 2.31.1
| |