<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/library/std/src/sys/sgx/mod.rs, branch 1.71.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.71.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.71.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2022-12-29T16:45:07+00:00</updated>
<entry>
<title>std: unify id-based thread parking implementations</title>
<updated>2022-12-29T16:45:07+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2022-12-19T14:59:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a9e5c1a309df80434ebc4c1f6bfaa5cb119b465d'/>
<id>urn:sha1:a9e5c1a309df80434ebc4c1f6bfaa5cb119b465d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #98391 - joboet:sgx_parker, r=m-ou-se</title>
<updated>2022-12-10T08:24:40+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2022-12-10T08:24:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ae8794ce6a7180aa81c718172321ac704e94f342'/>
<id>urn:sha1:ae8794ce6a7180aa81c718172321ac704e94f342</id>
<content type='text'>
Reimplement std's thread parker on top of events on SGX

Mutex and Condvar are being replaced by more efficient implementations, which need thread parking themselves (see #93740). Therefore, the generic `Parker` needs to be replaced on all platforms where the new lock implementation will be used.

SGX enclaves have a per-thread event state, which allows waiting for and setting specific bits. This is already used by the current mutex implementation. The thread parker can however be much more efficient, as it only needs to store the `TCS` address of one thread. This address is stored in a state variable, which can also be set to indicate the thread was already notified.

`park_timeout` does not guard against spurious wakeups like the current condition variable does. This is allowed by the API of `Parker`, and I think it is better to let users handle these wakeups themselves as the guarding is quite expensive and might not be necessary.

`@jethrogb` as you wrote the initial SGX support for `std`, I assume you are the target maintainer? Could you help me test this, please? Lacking a x86_64 chip, I can't run SGX.
</content>
</entry>
<entry>
<title>dont attempt strict provenance in SGX</title>
<updated>2022-11-21T15:10:56+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2022-11-21T15:10:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1a6966602a06bb85d1952027e990d72f6d01792f'/>
<id>urn:sha1:1a6966602a06bb85d1952027e990d72f6d01792f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Support `#[unix_sigpipe = "inherit|sig_dfl|sig_ign"]` on `fn main()`</title>
<updated>2022-08-28T17:46:45+00:00</updated>
<author>
<name>Martin Nordholts</name>
<email>enselic@gmail.com</email>
</author>
<published>2022-07-05T17:56:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ddee45e1d7fd34563c13513d974f792fae41a2f7'/>
<id>urn:sha1:ddee45e1d7fd34563c13513d974f792fae41a2f7</id>
<content type='text'>
This makes it possible to instruct libstd to never touch the signal
handler for `SIGPIPE`, which makes programs pipeable by default (e.g.
with `./your-program | head -n 1`) without `ErrorKind::BrokenPipe`
errors.
</content>
</entry>
<entry>
<title>std: rewrite SGX thread parker</title>
<updated>2022-06-22T14:42:49+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2022-06-22T14:42:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9678cece6de806693fc585225c0d6a4a5adaacd3'/>
<id>urn:sha1:9678cece6de806693fc585225c0d6a4a5adaacd3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>library: Remove definitions and reexports of `strlen` from libstd</title>
<updated>2022-04-14T18:57:01+00:00</updated>
<author>
<name>Vadim Petrochenkov</name>
<email>vadim.petrochenkov@gmail.com</email>
</author>
<published>2022-04-14T11:38:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6eaec56ef79c605e90664eb25f66c75ae8bd60c9'/>
<id>urn:sha1:6eaec56ef79c605e90664eb25f66c75ae8bd60c9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move std::sys::{mutex, condvar, rwlock} to std::sys::locks.</title>
<updated>2022-03-22T17:19:47+00:00</updated>
<author>
<name>Mara Bos</name>
<email>m-ou.se@m-ou.se</email>
</author>
<published>2022-03-21T14:45:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=733153f2e550d46fe6f794c969df91368580e0b8'/>
<id>urn:sha1:733153f2e550d46fe6f794c969df91368580e0b8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Hide Repr details from io::Error, and rework `io::Error::new_const`.</title>
<updated>2022-02-05T02:47:29+00:00</updated>
<author>
<name>Thom Chiovoloni</name>
<email>chiovolonit@gmail.com</email>
</author>
<published>2021-08-08T08:04:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=554918e311a1221744aa9b6d60e2f00f5b3155e5'/>
<id>urn:sha1:554918e311a1221744aa9b6d60e2f00f5b3155e5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move `os_str_bytes` to `sys::unix` and reuse it on other platforms.</title>
<updated>2021-07-03T01:01:36+00:00</updated>
<author>
<name>Christiaan Dirkx</name>
<email>christiaan@dirkx.email</email>
</author>
<published>2021-06-21T09:44:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c93cb40b90b5f862bf448136cbe608f43ae0f62f'/>
<id>urn:sha1:c93cb40b90b5f862bf448136cbe608f43ae0f62f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename ErrorKind::Unknown to Uncategorized.</title>
<updated>2021-06-15T12:30:13+00:00</updated>
<author>
<name>Mara Bos</name>
<email>m-ou.se@m-ou.se</email>
</author>
<published>2021-06-15T12:27:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a0d11a4fab9c00e7df40a248de5d1532c56d5ef6'/>
<id>urn:sha1:a0d11a4fab9c00e7df40a248de5d1532c56d5ef6</id>
<content type='text'>
</content>
</entry>
</feed>
