aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/c++/clang.cpp
diff options
context:
space:
mode:
authorPeter Zijlstra <[email protected]>2018-11-29 13:44:49 +0000
committerIngo Molnar <[email protected]>2019-01-21 10:15:38 +0000
commitb061c38bef43406df8e73c5be06cbfacad5ee6ad (patch)
treec031de9bb7878fd8a24cc0fb339151044e2fae12 /tools/perf/util/c++/clang.cpp
parentsched/wake_q: Fix wakeup ordering for wake_q (diff)
downloadkernel-b061c38bef43406df8e73c5be06cbfacad5ee6ad.tar.gz
kernel-b061c38bef43406df8e73c5be06cbfacad5ee6ad.zip
futex: Fix (possible) missed wakeup
We must not rely on wake_q_add() to delay the wakeup; in particular commit: 1d0dcb3ad9d3 ("futex: Implement lockless wakeups") moved wake_q_add() before smp_store_release(&q->lock_ptr, NULL), which could result in futex_wait() waking before observing ->lock_ptr == NULL and going back to sleep again. Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Thomas Gleixner <[email protected]> Fixes: 1d0dcb3ad9d3 ("futex: Implement lockless wakeups") Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/util/c++/clang.cpp')
0 files changed, 0 insertions, 0 deletions