[PATCH-tip 0/3] locking/rwsem: Minor twists to improve rwsem performance

From: Waiman Long
Date: Wed Feb 22 2017 - 13:05:36 EST

Patch 1 checks wait_list without lock when spinners are present.

Patch 2 moves down the rwsem_down_read_failed() function after the
optimistic spinning section so that functions in that section can
be used.

Patch 3 undoes active read lock ASAP when either the spinners are
present or the trylock fails.

Waiman Long (3):
locking/rwsem: Check wait_list without lock if spinner present
locking/rwsem: move down rwsem_down_read_failed()
locking/rwsem: Stop active read lock ASAP

kernel/locking/rwsem-xadd.c | 126 +++++++++++++++++++++++++++-----------------
1 file changed, 78 insertions(+), 48 deletions(-)