-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Add test for checking used glibc symbols #135164
Conversation
The easiest way is probably to just have a It kinda side-steps bootstrap, but this is not that big of a problem. Would be great if you can document this caveat somewhere on rustc-dev-guide (maybe in |
This comment has been minimized.
This comment has been minimized.
1f74654
to
70921f5
Compare
@bors try |
…r=<try> Add test for checking used glibc symbols This test checks that we do not use too new glibc symbols in the compiler on x64 GNU Linux, in order not to break our [glibc promises](https://blog.rust-lang.org/2022/08/01/Increasing-glibc-kernel-requirements.html). One thing that isn't solved in the PR yet is to make sure that this test will only run on `dist` CI, more specifically on the `dist-x86_64-linux` runner, in the opt-dist post-optimization tests (it can fail elsewhere, that doesn't matter). Any suggestions on how to do that are welcome. Fixes: rust-lang#134037 r? `@jieyouxu`
This comment has been minimized.
This comment has been minimized.
☀️ Try build successful - checks-actions |
70921f5
to
1de6710
Compare
Huh, opt-dist tests no longer show in verbose mode, unfortunate. I enabled it in a separate commit. @bors try |
…r=<try> Add test for checking used glibc symbols This test checks that we do not use too new glibc symbols in the compiler on x64 GNU Linux, in order not to break our [glibc promises](https://blog.rust-lang.org/2022/08/01/Increasing-glibc-kernel-requirements.html). One thing that isn't solved in the PR yet is to make sure that this test will only run on `dist` CI, more specifically on the `dist-x86_64-linux` runner, in the opt-dist post-optimization tests (it can fail elsewhere, that doesn't matter). Any suggestions on how to do that are welcome. Fixes: rust-lang#134037 r? `@jieyouxu`
☀️ Try build successful - checks-actions |
@bors try |
…r=<try> Add test for checking used glibc symbols This test checks that we do not use too new glibc symbols in the compiler on x64 GNU Linux, in order not to break our [glibc promises](https://blog.rust-lang.org/2022/08/01/Increasing-glibc-kernel-requirements.html). One thing that isn't solved in the PR yet is to make sure that this test will only run on `dist` CI, more specifically on the `dist-x86_64-linux` runner, in the opt-dist post-optimization tests (it can fail elsewhere, that doesn't matter). Any suggestions on how to do that are welcome. Fixes: rust-lang#134037 r? `@jieyouxu`
@bors r- (since full CI hasn't started) |
(Feel free to r=me with the nit) |
@bors r=jieyouxu |
…r=jieyouxu Add test for checking used glibc symbols This test checks that we do not use too new glibc symbols in the compiler on x64 GNU Linux, in order not to break our [glibc promises](https://blog.rust-lang.org/2022/08/01/Increasing-glibc-kernel-requirements.html). One thing that isn't solved in the PR yet is to make sure that this test will only run on `dist` CI, more specifically on the `dist-x86_64-linux` runner, in the opt-dist post-optimization tests (it can fail elsewhere, that doesn't matter). Any suggestions on how to do that are welcome. Fixes: rust-lang#134037 r? `@jieyouxu`
💔 Test failed - checks-actions |
@bors retry Network error |
@bors p=5 (scheduling) |
// Use objdump instead, since it seems to work, and we only run this test in a specific | ||
// CI environment anyway. | ||
cmd("objdump") | ||
.arg("--dynamic-syms") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FWIW, I find readelf -V
(--version-info
) easier to deal with, especially looking just at the latter .gnu.version_r
section of the output. It looks like llvm-readelf
supports this too, without choking on the current library. You can't see the name the relevant symbols this way though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wanted the test to print the offending symbols, to give us a notion of what symbols cause the issue.
☀️ Test successful - checks-actions |
Finished benchmarking commit (3cd8fcb): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary 0.2%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 777.336s -> 776.393s (-0.12%) |
This test checks that we do not use too new glibc symbols in the compiler on x64 GNU Linux, in order not to break our glibc promises.
One thing that isn't solved in the PR yet is to make sure that this test will only run on
dist
CI, more specifically on thedist-x86_64-linux
runner, in the opt-dist post-optimization tests (it can fail elsewhere, that doesn't matter). Any suggestions on how to do that are welcome.Fixes: #134037
r? @jieyouxu