Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Rollup of 8 pull requests #135906

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
matthiaskrgr wants to merge 17 commits into rust-lang:master from matthiaskrgr:rollup-k08iwsq

Conversation

Copy link
Member

@matthiaskrgr matthiaskrgr commented Jan 22, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

joboet and others added 17 commits January 19, 2025 20:44
Fixes rust-lang#111272.
With rust-lang#127912 merged, we now have all the infrastructure in place to support stack overflow detection in TLS destructors. This was not possible before because the signal stack was freed in the thread main function, thus a SIGSEGV afterwards would immediately crash. And on platforms without native TLS, the guard page address was stored in an allocation freed in a TLS destructor, so would not be available. rust-lang#127912 introduced the `local_pointer` macro which allows storing a pointer-sized TLS variable without allocation and the `thread_cleanup` runtime function which is called after all other code managed by the Rust runtime. This PR simply moves the signal stack cleanup to the end of `thread_cleanup` and uses `local_pointer` to store every necessary variable. And so, everything run under the Rust runtime is now properly protected against stack overflows.
These targets have always generated DWARF debuginfo and not CodeView/PDB debuginfo
like the MSVC Windows targets. Correct their target definitions to reflect this.
The newly added tests for the various combinations of `*-windows-gnu*` targets and
`-Csplit-debuginfo` show that this does not change any stable behavior.
This was added years ago and is outdated today.
Signed-off-by: onur-ozkan <work@onurozkan.dev>
..., r=Amanieu
std: detect stack overflows in TLS destructors on UNIX
Fixes rust-lang#111272.
With rust-lang#127912 merged, we now have all the infrastructure in place to support stack overflow detection in TLS destructors. This was not possible before because the signal stack was freed in the thread main function, thus a SIGSEGV afterwards would immediately crash. And on platforms without native TLS, the guard page address was stored in an allocation freed in a TLS destructor, so would not be available. rust-lang#127912 introduced the `local_pointer` macro which allows storing a pointer-sized TLS variable without allocation and the `thread_cleanup` runtime function which is called after all other code managed by the Rust runtime. This PR simply moves the signal stack cleanup to the end of `thread_cleanup` and uses `local_pointer` to store every necessary variable. And so, everything run under the Rust runtime is now properly protected against stack overflows.
...-wf-coerce-ice, r=lcnr
Don't ICE in coerce when autoderef fails to structurally normalize non-WF type in new solver
r? lcnr
...uginfokind, r=lqd
Update windows-gnu targets to set `DebuginfoKind::DWARF`
These targets have always used DWARF debuginfo and not CodeView/PDB debuginfo like the MSVC Windows targets. However, their target definitions claim to use `DebuginfoKind::PDB` probably to ensure that we do not try to allow the use of split-DWARF debuginfo.
This does not appear to be necessary since the targets set their supported split debug info to `Off`. I've looked at all of the uses of these properties and this patch does not appear to cause any functional changes in compiler behavior. I also added UI tests to attempt to validate there is no change in the behavior of these options on stable compilers.
cc `@mati865` since you mentioned this in rust-lang#135739
cc `@davidtwco` for split-dwarf
...=Kobzol
ci: use 8 core arm runner for dist-aarch64-linux
try-job: dist-aarch64-linux
...eyouxu
fix outdated file path ref in llvm
This was added years ago and is outdated today.
..._mut, r=tgross35
Remove erroneous `unsafe` in `BTreeSet::upper_bound_mut`
rust-lang#128309 (comment)
Tracking issue: rust-lang#107540 
rustdoc-json-types: Finalize dyn compatibility renaming
Followup to rust-lang#131595.
Part of rust-lang#130852.
Inspired by rust-lang#135858 (does the same thing but for the rustdoc-types docs).
r? `@fmease`
Copy link
Collaborator

rustbot commented Jan 22, 2025

Could not assign reviewer from: ghost.
User(s) ghost are either the PR author, already assigned, or on vacation. Please use r? to specify someone else to assign.

Copy link
Collaborator

rustbot commented Jan 22, 2025

r? @wesleywiser

rustbot has assigned @wesleywiser.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added A-rustdoc-json Area: Rustdoc JSON backend A-testsuite Area: The testsuite used to check the correctness of rustc O-hermit Operating System: Hermit O-SGX Target: SGX O-solid Operating System: SOLID O-unix Operating system: Unix-like O-windows Operating system: Windows S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jan 22, 2025
@rustbot rustbot added T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Jan 22, 2025
Copy link
Member Author

@bors r+ rollup=never p=5

Copy link
Collaborator

bors commented Jan 22, 2025

📌 Commit caaeb22 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 22, 2025
Copy link
Collaborator

bors commented Jan 23, 2025

⌛ Testing commit caaeb22 with merge 5431177...

bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 23, 2025
...iaskrgr
Rollup of 8 pull requests
Successful merges:
 - rust-lang#131282 (std: detect stack overflows in TLS destructors on UNIX)
 - rust-lang#134746 (Don't ICE in coerce when autoderef fails to structurally normalize non-WF type in new solver)
 - rust-lang#135790 (Update windows-gnu targets to set `DebuginfoKind::DWARF`)
 - rust-lang#135878 (ci: use 8 core arm runner for dist-aarch64-linux)
 - rust-lang#135879 (fix outdated file path ref in llvm)
 - rust-lang#135883 (Remove erroneous `unsafe` in `BTreeSet::upper_bound_mut`)
 - rust-lang#135884 (remove implied end of slice)
 - rust-lang#135898 (rustdoc-json-types: Finalize dyn compatibility renaming)
r? `@ghost`
`@rustbot` modify labels: rollup
Copy link
Collaborator

The job i686-mingw failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
test [ui] tests\ui\debuginfo\debuginfo-type-name-layout-ice-94961-1.rs ... ok
test [ui] tests\ui\debuginfo\late-bound-projection.rs ... ok
test [ui] tests\ui\debuginfo\sroa-fragment-debuginfo.rs ... ok
test [ui] tests\ui\custom_test_frameworks\mismatch.rs ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#aarch64_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#i686_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#i686_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#i686_uwp_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#x86_64_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#x86_64_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_off.rs#x86_64_uwp_g ... ok
test [ui] tests\ui\debuginfo\debuginfo_with_uninhabitable_field_and_unsized.rs ... ok
test [ui] tests\ui\debuginfo\debuginfo-type-name-layout-ice-94961-2.rs ... ok
test [ui] tests\ui\debuginfo\issue-105386-debuginfo-ub.rs ... ok
test [ui] tests\ui\debuginfo\issue-105386-debuginfo-ub.rs ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#i686_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#aarch64_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#i686_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#i686_uwp_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#x86_64_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#x86_64_uwp_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_packed.rs#x86_64_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#aarch64_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#i686_gl ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#i686_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#i686_uwp_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#x86_64_g ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#x86_64_gl ... ok
test [ui] tests\ui\default-method-parsing.rs ... ok
test [ui] tests\ui\debuginfo\windows_gnu_split_debuginfo_unpacked.rs#x86_64_uwp_g ... ok
test [ui] tests\ui\definition-reachable\private-non-types.rs ... ok
test [ui] tests\ui\definition-reachable\private-types.rs ... ok
test [ui] tests\ui\deduplicate-diagnostics.rs#duplicate ... ok
test [ui] tests\ui\default-method-simple.rs ... ok
---
---- [ui] tests\ui\runtime\out-of-stack.rs stdout ----
error: test run failed!
status: exit code: 101
command: PATH="C:\a\rust\rust\build\i686-pc-windows-gnu\stage2\lib\rustlib\i686-pc-windows-gnu\lib;C:\a\rust\rust\build\i686-pc-windows-gnu\stage0-bootstrap-tools\i686-pc-windows-gnu\release\deps;C:\a\rust\rust\build\i686-pc-windows-gnu\stage0\bin;C:\a\_temp\msys64\mingw32\bin;C:\a\_temp\msys64\usr\local\bin;C:\a\_temp\msys64\usr\bin;C:\a\_temp\msys64\usr\bin;C:\a\rust\rust\ninja;C:\a\rust\rust\mingw32\bin;C:\a\rust\rust\sccache;C:\a\_temp\setup-msys2;C:\Program Files\MongoDB\Server5円.0\bin;C:\aliyun-cli;C:\vcpkg;C:\Program Files (x86)\NSIS;C:\tools\zstd;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack3円.3.1\x64;C:\cabal\bin;C:\ghcup\bin;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 8.0\bin;C:\Program Files\R\R-4.4.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go1円.21.13\x64\bin;C:\hostedtoolcache\windows\Python3円.9.13\x64\Scripts;C:\hostedtoolcache\windows\Python3円.9.13\x64;C:\hostedtoolcache\windows\Ruby3円.0.7\x64\bin;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk8円.0.432-6\x64\bin;C:\Program Files\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\PowerShell7円;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC170円\Tools\Binn;C:\Program Files\Microsoft SQL Server150円\Tools\Binn;C:\Program Files (x86)\Windows Kits10円\Windows Performance Toolkit;C:\Program Files (x86)\WiX Toolset v3.14\bin;C:\Program Files\Microsoft SQL Server130円\DTS\Binn;C:\Program Files\Microsoft SQL Server140円\DTS\Binn;C:\Program Files\Microsoft SQL Server150円\DTS\Binn;C:\Program Files\Microsoft SQL Server160円\DTS\Binn;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.9.9\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI;C:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files\Microsoft SQL Server130円\Tools\Binn;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\.cargo\bin;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps;C:\a\_temp\msys64\usr\bin\site_perl;C:\a\_temp\msys64\usr\bin\vendor_perl;C:\a\_temp\msys64\usr\bin\core_perl" "C:\\a\\rust\\rust\\build\\i686-pc-windows-gnu\\test\\ui\\runtime\\out-of-stack\\a.exe"
testing: silent-thread
testing: loud-thread
testing: silent-thread-tls
------------------------------------------
------------------------------------------
--- stderr -------------------------------
thread 'main' panicked at C:\a\rust\rust\tests\ui\runtime\out-of-stack.rs:71:5:
assertion failed: !status.success()
------------------------------------------
failures:
 [ui] tests\ui\runtime\out-of-stack.rs
test result: FAILED. 17952 passed; 1 failed; 358 ignored; 0 measured; 23 filtered out; finished in 912.15s
Some tests failed in compiletest suite=ui mode=ui host=i686-pc-windows-gnu target=i686-pc-windows-gnu
Build completed unsuccessfully in 1:01:06
make: *** [Makefile:120: ci-mingw-x] Error 1
 network time: 2025年1月23日 05:29:03 GMT
##[error]Process completed with exit code 2.
Post job cleanup.
[command]"C:\Program Files\Git\bin\git.exe" version

Copy link
Collaborator

bors commented Jan 23, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jan 23, 2025
Copy link
Member

Genuine failure, probably #131282
@bors r-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 23, 2025
@matthiaskrgr matthiaskrgr deleted the rollup-k08iwsq branch January 25, 2025 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Labels
A-rustdoc-json Area: Rustdoc JSON backend A-testsuite Area: The testsuite used to check the correctness of rustc O-hermit Operating System: Hermit O-SGX Target: SGX O-solid Operating System: SOLID O-unix Operating system: Unix-like O-windows Operating system: Windows S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /