c4dd3f4ef9
Prevent futex_wait from actually waiting if a concurrent waker was executed before us Fixes #2223 Two SC fences were placed in `futex_wake` (after the caller has changed `addr`), and in `futex_wait` (before we read `addr`). This guarantees that `futex_wait` sees the value written to `addr` before the last `futex_wake` call, should one exists, and avoid going into sleep with no one else to wake us up. |
||
---|---|---|
.. | ||
channels.rs | ||
concurrent_caller_location.rs | ||
data_race.rs | ||
disable_data_race_detector.rs | ||
issue1643.rs | ||
libc_pthread_cond.rs | ||
linux-futex.rs | ||
simple.rs | ||
simple.stderr | ||
spin_loop.rs | ||
spin_loops_nopreempt.rs | ||
spin_loops.stderr | ||
sync_singlethread.rs | ||
sync.rs | ||
sync.stdout | ||
thread_locals.rs | ||
tls_lib_drop_single_thread.rs | ||
tls_lib_drop_single_thread.stderr | ||
tls_lib_drop.rs | ||
tls_lib_drop.stdout | ||
tls_pthread_drop_order.rs |