-
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
Relax restrictions on multiple sanitizers #124676
Conversation
These commits modify compiler targets. |
This comment has been minimized.
This comment has been minimized.
Some changes occurred in tests/ui/sanitizer cc @rust-lang/project-exploit-mitigations, @rcvalle |
Since Address Sanitizer includes the leak detection, combining it with Leak Sanitizer should omit the Leak Sanitizer runtime library: |
That's a good point. I had assumed |
Most combinations of LLVM sanitizers are legal-enough to enable simultaneously. This change will allow simultaneously enabling ASAN and shadow call stacks on supported platforms.
8af9c9a
to
5976494
Compare
r? @cuviper |
LGTM (@cuviper FYI). Thank you for your time and for working on this, @djkoloski! Much appreciated. |
Thanks! @bors r=cuviper,rcvalle |
☀️ Test successful - checks-actions |
Finished benchmarking commit (5065123): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)This benchmark run did not return any relevant results for this metric. CyclesResults (primary -5.5%)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.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 673.673s -> 670.767s (-0.43%) |
After rust-lang/rust#124676 was rolled, we can enable SCS for both AArch64 and RISC-V, since it won't conflict with other sanitizers in the compiler driver anymore. Fixed: 42069386 Bug: 360955800 Change-Id: Ib30747204882317bb6b243c8a8ce760f09520a83 Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/791504 Size-Review: Przemek Pietrzkiewicz <[email protected]> Fuchsia-Auto-Submit: Paul Kirth <[email protected]> Reviewed-by: Roland McGrath <[email protected]> Commit-Queue: Paul Kirth <[email protected]>
…n AArch64 and RISC-V After rust-lang/rust#124676 was rolled, we can enable SCS for both AArch64 and RISC-V, since it won't conflict with other sanitizers in the compiler driver anymore. Original-Fixed: 42069386 Original-Bug: 360955800 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/791504 Size-Review: Przemek Pietrzkiewicz <[email protected]> Original-Revision: 4eefc272d36835959f2e44be6e06a6fbb504e418 GitOrigin-RevId: 75ffba3794ae45c43c84d70f06549cf62eea483f Change-Id: Ia2bc7342adff3cdc327fc37b8498ab7e9106e227
Most combinations of LLVM sanitizers are legal-enough to enable simultaneously. This change will allow simultaneously enabling ASAN and shadow call stacks on supported platforms.
I used this python script to generate the mutually-exclusive sanitizer combinations: