about summary refs log tree commit diff
path: root/library/std/src/sys/unix/cmath.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-08-18 19:03:38 +0000
committerbors <bors@rust-lang.org>2023-08-18 19:03:38 +0000
commitd06ca0ffaf4ac72732665f99dd9ad962194cd0b3 (patch)
tree1b6580c5664d6689388b4ec11d9501cf40c12733 /library/std/src/sys/unix/cmath.rs
parentee5cb9e3a608b58a21889c77733564b48b74544f (diff)
parentfd9fcc580a40bdf398576199c5e8c3ebe12de9c6 (diff)
downloadrust-d06ca0ffaf4ac72732665f99dd9ad962194cd0b3.tar.gz
rust-d06ca0ffaf4ac72732665f99dd9ad962194cd0b3.zip
Auto merge of #114591 - joboet:thread_parking_ordering_fix, r=thomcc
Synchronize with all calls to `unpark` in id-based thread parker

[The documentation for `thread::park`](https://doc.rust-lang.org/nightly/std/thread/fn.park.html#memory-ordering) guarantees that "park synchronizes-with all prior unpark operations". In the id-based thread parking implementation, this is not implemented correctly, as the state variable is reset with a simple store, so there will not be a *synchronizes-with* edge if an `unpark` happens just before the reset. This PR corrects this, replacing the load-check-reset sequence with a single `compare_exchange`.
Diffstat (limited to 'library/std/src/sys/unix/cmath.rs')
0 files changed, 0 insertions, 0 deletions