<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/library/std/src/sys/sync/mutex/sgx.rs, branch stable</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=stable</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=stable'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-10-28T15:56:22+00:00</updated>
<entry>
<title>std: refactor `pthread`-based synchronization</title>
<updated>2024-10-28T15:56:22+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2024-10-28T15:56:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=528b37a738abf6cb0166fb60701dc2841ad54ebf'/>
<id>urn:sha1:528b37a738abf6cb0166fb60701dc2841ad54ebf</id>
<content type='text'>
The non-trivial code for `pthread_condvar` is duplicated across the thread parking and the `Mutex`/`Condvar` implementations. This PR moves that code into `sys::pal`, which now exposes a non-movable wrapper type for `pthread_mutex_t` and `pthread_condvar_t`.
</content>
</entry>
<entry>
<title>std: replace `LazyBox` with `OnceBox`</title>
<updated>2024-10-01T20:05:35+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2024-10-01T12:57:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c1acccdf1744561d4dda9b943fa91d873cea3b40'/>
<id>urn:sha1:c1acccdf1744561d4dda9b943fa91d873cea3b40</id>
<content type='text'>
This PR replaces the `LazyBox` wrapper used to allocate the pthread primitives with `OnceBox`, which has a more familiar API mirroring that of `OnceLock`. This cleans up the code in preparation for larger changes like #128184 (from which this PR was split) and allows some neat optimizations, like avoid an acquire-load of the allocation pointer in `Mutex::unlock`, where the initialization of the allocation must have already been observed.

Additionally, I've gotten rid of the TEEOS `Condvar` code, it's just a duplicate of the pthread one anyway and I didn't want to repeat myself.
</content>
</entry>
<entry>
<title>Reformat using the new identifier sorting from rustfmt</title>
<updated>2024-09-22T23:11:29+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-09-22T23:05:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c682aa162b0d41e21cc6748f4fecfe01efb69d1f'/>
<id>urn:sha1:c682aa162b0d41e21cc6748f4fecfe01efb69d1f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>std: move `Once` implementations to `sys`</title>
<updated>2024-03-12T14:41:06+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2024-03-12T13:55:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=22a5267c83a3e17f2b763279eb24bb632c45dc6b'/>
<id>urn:sha1:22a5267c83a3e17f2b763279eb24bb632c45dc6b</id>
<content type='text'>
</content>
</entry>
</feed>
