Skip to content
Closed
Changes from 1 commit
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
5d9eeff
Ensure TLS destructors run before thread joins in SGX
mzohreva Apr 21, 2021
8a0a4b1
Use atomics in join_orders_after_tls_destructors test
mzohreva Apr 29, 2021
051f9ec
Add --run flag to compiletest
tmandry Apr 24, 2021
0978381
Add run flag to bootstrap test
tmandry Apr 28, 2021
0b2e908
Add support for --run for non-ui tests
tmandry Apr 29, 2021
e282fd0
Include --run in stamp hash
tmandry Apr 29, 2021
f64c45a
Add needs-run-enabled directive for should-fail tests
tmandry Apr 29, 2021
1e46b18
Fix help for profile flags
tmandry Apr 28, 2021
4a63e1e
Allow using `core::` in intra-doc links within core itself
jyn514 Apr 30, 2021
d7cd6e2
Fix RESTRICTED_DEPENDENCY_CRATES to list rustc_driver instead of rust…
bjorn3 May 3, 2021
2fa18b8
Remove obsolete crate exceptions
bjorn3 May 3, 2021
5db01aa
Take build dependencies into account during license checks
bjorn3 May 3, 2021
24def63
Wire up tidy dependency checks for cg_clif
bjorn3 May 3, 2021
6b64202
Handle incorrect placement of parentheses in trait bounds more gracef…
estebank May 4, 2021
0b94338
CTFE engine: rename copy → copy_intrinsic, move to intrinsics.rs
RalfJung May 4, 2021
3584c1d
Disallows `#![feature(no_coverage)]` on stable and beta
richkadel May 3, 2021
ad4ccf9
Remove unneeded call to with_default_session_globals in rustdoc highl…
GuillaumeGomez May 5, 2021
3c489a3
Update highlight tests
GuillaumeGomez May 5, 2021
568d9c5
compiletest: Add --target-panic, needs-unwind
tmandry Apr 29, 2021
e1a8ecf
Add needs-unwind to tests
tmandry Apr 29, 2021
1993e1a
Support multi target-rustcflags for -Zpanic-abort-tests
tmandry Apr 30, 2021
947ad58
Fix up/ignore failing ui tests on fuchsia
tmandry Apr 30, 2021
513c56a
remove unused variant
lcnr May 6, 2021
b981141
outdated comment
lcnr May 6, 2021
81a97ce
move the current channel to src/ci/channel
pietroalbini May 6, 2021
2acd62d
join_orders_after_tls_destructors: ensure thread 2 is launched before…
mzohreva May 6, 2021
392723e
ci: error out if someone sends a PR to the wrong branch
pietroalbini May 6, 2021
475c200
Rollup merge of #84409 - mzohreva:mz/tls-dtors-before-join, r=jethrogb
Dylan-DPC May 6, 2021
a4bd526
Rollup merge of #84500 - tmandry:compiletest-run-flag, r=Mark-Simulacrum
Dylan-DPC May 6, 2021
e51dbb9
Rollup merge of #84734 - tmandry:compiletest-needs-unwind, r=Mark-Sim…
Dylan-DPC May 6, 2021
c17d307
Rollup merge of #84755 - jyn514:core-links, r=kennytm
Dylan-DPC May 6, 2021
26e32ed
Rollup merge of #84871 - richkadel:no-coverage-unstable-only, r=nagisa
Dylan-DPC May 6, 2021
3ef0a2e
Rollup merge of #84872 - bjorn3:cg_clif_tidy, r=Mark-Simulacrum
Dylan-DPC May 6, 2021
71a9f62
Rollup merge of #84896 - estebank:issue-84772, r=jackh726
Dylan-DPC May 6, 2021
d128528
Rollup merge of #84905 - RalfJung:copy, r=oli-obk
Dylan-DPC May 6, 2021
529125e
Rollup merge of #84953 - GuillaumeGomez:remove-unneeded-with_default_…
Dylan-DPC May 6, 2021
d7b06ae
Rollup merge of #84987 - lcnr:nits, r=Mark-Simulacrum
Dylan-DPC May 6, 2021
8cd9af3
Rollup merge of #84997 - pietroalbini:ci-verify-channel, r=Mark-Simul…
Dylan-DPC May 6, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
join_orders_after_tls_destructors: ensure thread 2 is launched before…
… thread 1 enters TLS destructors
  • Loading branch information
mzohreva committed May 6, 2021
commit 2acd62d7c389bcdcf212673ed14120d2fd841df6
17 changes: 9 additions & 8 deletions library/std/src/thread/local/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -250,13 +250,6 @@ fn join_orders_after_tls_destructors() {

impl Drop for TlDrop {
fn drop(&mut self) {
loop {
match SYNC_STATE.load(Ordering::SeqCst) {
FRESH => thread::yield_now(),
THREAD2_LAUNCHED => break,
v => unreachable!("sync state: {}", v),
}
}
let mut sync_state = SYNC_STATE.swap(THREAD1_WAITING, Ordering::SeqCst);
loop {
match sync_state {
Expand All @@ -276,7 +269,15 @@ fn join_orders_after_tls_destructors() {
static TL_DROP: TlDrop = TlDrop;
}

TL_DROP.with(|_| {})
TL_DROP.with(|_| {});

loop {
match SYNC_STATE.load(Ordering::SeqCst) {
FRESH => thread::yield_now(),
THREAD2_LAUNCHED => break,
v => unreachable!("sync state: {}", v),
}
}
})
.unwrap();

Expand Down