rust/library
joboet 84bb0f07e6
std: stop using TLS in signal handler
TLS is not async-signal-safe, making its use in the signal handler used to detect stack overflows unsound (c.f. #133698). POSIX however lists two thread-specific identifiers that can be obtained in a signal handler: the current `pthread_t` and the address of `errno`. Since `pthread_equal` is not AS-safe, `pthread_t` should be considered opaque, so for our purposes, `&errno` is the only option. This however works nicely: we can use the address as a key into a map that stores information for each thread. This PR uses a `BTreeMap` protected by a spin lock to hold the guard page address and thread name and thus fixes #133698.
2025-05-05 15:18:52 +02:00
..
alloc Auto merge of #140188 - nnethercote:streamline-format-macro, r=cuviper 2025-04-30 04:04:21 +00:00
alloctests Suggest {to,from}_ne_bytes for transmutations between arrays and integers, etc 2025-04-24 13:14:36 +07:00
backtrace@9d2c34e7e6 Update backtrace 2025-02-13 14:32:50 -08:00
core Rollup merge of #140550 - Amanieu:stabilize_select_unpredictable, r=workingjubilee 2025-05-02 19:37:59 +02:00
coretests Rollup merge of #140550 - Amanieu:stabilize_select_unpredictable, r=workingjubilee 2025-05-02 19:37:59 +02:00
panic_abort Migrate panic_abort to Rust 2024 2025-03-11 09:46:34 -07:00
panic_unwind update cfgs 2025-04-09 12:29:59 +01:00
portable-simd Merge commit 'c14f2fc3eb' into sync-from-portable-simd-2025-03-19 2025-03-19 00:58:47 -04:00
proc_macro Stabilize proc_macro::Span::{start, end, line, column}. 2025-04-15 17:29:04 +02:00
profiler_builtins Fix profiler_builtins build script to handle full path to profiler lib 2025-04-11 16:57:38 +02:00
rtstartup Revert changes for rtstartup 2025-03-10 21:23:31 +08:00
rustc-std-workspace-alloc Migrated the rustc-std-workspace crates to Rust 2024 2025-03-11 09:46:35 -07:00
rustc-std-workspace-core Migrated the rustc-std-workspace crates to Rust 2024 2025-03-11 09:46:35 -07:00
rustc-std-workspace-std Migrated the rustc-std-workspace crates to Rust 2024 2025-03-11 09:46:35 -07:00
std std: stop using TLS in signal handler 2025-05-05 15:18:52 +02:00
stdarch@f1c1839c0d Update stdarch 2025-05-01 20:01:43 +05:30
sysroot Update stdarch 2025-05-01 20:01:43 +05:30
test Remove backticks from ShouldPanic::YesWithMessage's TrFailedMsg 2025-04-28 21:40:29 +02:00
unwind unwind: bump unwinding dependency to 0.2.6 2025-04-29 09:46:32 +08:00
windows_targets Migrate windows-targets to Rust 2024 2025-03-11 09:46:35 -07:00
Cargo.lock Rollup merge of #140422 - betrusted-io:bump-unwinding-to-0.2.6, r=workingjubilee 2025-04-29 12:28:24 -04:00
Cargo.toml Add opt-level = "s" for more std symbolication crates 2025-04-01 20:50:19 +00:00