diff options
| author | Xie Yongji <[email protected]> | 2018-11-29 12:50:30 +0000 |
|---|---|---|
| committer | Ingo Molnar <[email protected]> | 2019-01-21 10:15:39 +0000 |
| commit | e158488be27b157802753a59b336142dc0eb0380 (patch) | |
| tree | db577b6083e0b46684933933690abd3f9c034bc2 /tools/perf/util/c++/clang.cpp | |
| parent | futex: Fix (possible) missed wakeup (diff) | |
| download | kernel-e158488be27b157802753a59b336142dc0eb0380.tar.gz kernel-e158488be27b157802753a59b336142dc0eb0380.zip | |
locking/rwsem: Fix (possible) missed wakeup
Because wake_q_add() can imply an immediate wakeup (cmpxchg failure
case), we must not rely on the wakeup being delayed. However, commit:
e38513905eea ("locking/rwsem: Rework zeroing reader waiter->task")
relies on exactly that behaviour in that the wakeup must not happen
until after we clear waiter->task.
[ peterz: Added changelog. ]
Signed-off-by: Xie Yongji <[email protected]>
Signed-off-by: Zhang Yu <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Fixes: e38513905eea ("locking/rwsem: Rework zeroing reader waiter->task")
Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/util/c++/clang.cpp')
0 files changed, 0 insertions, 0 deletions
