-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Relax SeqCst ordering in standard library. #122729
Commits on Mar 19, 2024
-
Configuration menu - View commit details
-
Copy full SHA for a2c74b8 - Browse repository at this point
Copy the full SHA a2c74b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e4cc6f - Browse repository at this point
Copy the full SHA 5e4cc6fView commit details -
SeqCst->Relaxed for proc_macro bridge counter.
Relaxed is enough here.
Configuration menu - View commit details
-
Copy full SHA for bf3debe - Browse repository at this point
Copy the full SHA bf3debeView commit details -
SeqCst->{Release,Acquire} for alloc error hook.
SeqCst is unnecessary.
Configuration menu - View commit details
-
Copy full SHA for 904fef0 - Browse repository at this point
Copy the full SHA 904fef0View commit details -
SeqCst->Relaxed for FIRST_PANIC.
Relaxed is enough to make sure this `swap` results in `true` only once.
Configuration menu - View commit details
-
Copy full SHA for 9f25a04 - Browse repository at this point
Copy the full SHA 9f25a04View commit details -
SeqCst->{Release,Acquire} in xous mutex.
No need for SeqCst. Release+Acquire is the right memory ordering for a mutex.
Configuration menu - View commit details
-
Copy full SHA for eb96698 - Browse repository at this point
Copy the full SHA eb96698View commit details -
Use less restricted memory ordering in thread_parking::pthread.
SeqCst is unnecessary here.
Configuration menu - View commit details
-
Copy full SHA for 516684c - Browse repository at this point
Copy the full SHA 516684cView commit details -
SeqCst->{Release,Acquire} in sys_common::thread_local_key.
SeqCst is unnecessary here.
Configuration menu - View commit details
-
Copy full SHA for e43aef0 - Browse repository at this point
Copy the full SHA e43aef0View commit details -
SeqCst->{Release,Acquire} for wasm DropLock.
SeqCst is unnecessary. Release+Acquire is the right ordering for a mutex.
Configuration menu - View commit details
-
Copy full SHA for 46bb073 - Browse repository at this point
Copy the full SHA 46bb073View commit details -
SeqCst->Relaxed in pal::windows::pipe.
Relaxed is enough to ensure fetch_add(1) returns each integer exactly once.
Configuration menu - View commit details
-
Copy full SHA for 60ad490 - Browse repository at this point
Copy the full SHA 60ad490View commit details -
SeqCst->{Release,Acquire} for xous DropLock.
SeqCst is unnecessary. Release+Acquire is the right ordering for a mutex.
Configuration menu - View commit details
-
Copy full SHA for 69a4d77 - Browse repository at this point
Copy the full SHA 69a4d77View commit details -
SeqCst->Relaxed for xous set_nonblocking.
The SeqCst wasn't synchronizing with anything. Relaxed is enough.
Configuration menu - View commit details
-
Copy full SHA for 5a594f7 - Browse repository at this point
Copy the full SHA 5a594f7View commit details
Commits on Mar 20, 2024
-
Use less restricted memory ordering in xous::thread_local_key.
SeqCst isn't necessary in any of these cases.
Configuration menu - View commit details
-
Copy full SHA for 8b519f9 - Browse repository at this point
Copy the full SHA 8b519f9View commit details -
SeqCst->Relaxed in std::net::test.
Relaxed is enough to have fetch_add(1) return each value only once (until it wraps around).
Configuration menu - View commit details
-
Copy full SHA for b45a725 - Browse repository at this point
Copy the full SHA b45a725View commit details -
SeqCst->Relaxed in thread local test.
Relaxed memory ordering is fine because spawn()/join() already provides all the synchronization we need.
Configuration menu - View commit details
-
Copy full SHA for acddc55 - Browse repository at this point
Copy the full SHA acddc55View commit details -
SeqCst->Relaxed in condvar test.
Relaxed is enough here. Synchronization is done by the mutex.
Configuration menu - View commit details
-
Copy full SHA for 3462175 - Browse repository at this point
Copy the full SHA 3462175View commit details