Skip to content

Refactor the use of atomics in netmgr

Ondřej Surý requested to merge ondrej/reduce-atomic-use-in-netmgr into main

Now that everything runs on their own loop and we don't cross the thread boundaries (with few exceptions), most of the atomic_bool variables used to track the socket state have been unatomicized because they are always accessed from the matching thread.

The remaining few have been relaxed: a) the sock->active is now using acquire/release memory ordering; b) the various global limits are now using relaxed memory ordering - we don't really care about the synchronization for those.

Merge request reports