-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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
Allow disabling ASan instrumentation for globals #127483
base: master
Are you sure you want to change the base?
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @cuviper (or someone else) some time within the next two weeks. Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (
|
Some changes occurred in tests/codegen/sanitizer cc @rust-lang/project-exploit-mitigations, @rcvalle |
This comment has been minimized.
This comment has been minimized.
b378189
to
ce4a226
Compare
LGTM (@cuviper FYI). We'll want this for #123617. Thank you for your time and for working on this, @BertalanD! Much appreciated. |
ce4a226
to
840429f
Compare
@BertalanD do you know if there is anything else possibly missing instrumentation before #123617? |
Thank you for reviewing; I pushed up the suggested style change. I haven't looked into missing instrumentation, so I can't help with that. But what might be relevant for stabilization is that this came up in the context of a Chromium issue where the added ASan annotation on |
Thank you for the information and for sending it out, @BertalanD! I'll take a look. |
The operation of all three basically boils down to creating a special section in the output file that's an array of pointers, by creating |
☔ The latest upstream changes (presumably #127831) made this pull request unmergeable. Please resolve the merge conflicts. |
840429f
to
9d17424
Compare
AddressSanitizer adds instrumentation to global variables unless the [`no_sanitize_address`](https://llvm.org/docs/LangRef.html#global-attributes) attribute is set on them. This commit extends the existing `#[no_sanitize(address)]` attribute to set this; previously it only had the desired effect on functions.
9d17424
to
670c03e
Compare
670c03e
to
9447dc7
Compare
The job Click to see the possible cause of the failure (guessed by this bot)
|
AddressSanitizer adds instrumentation to global variables unless the
no_sanitize_address
attribute is set on them.This commit extends the existing
#[no_sanitize(address)]
attribute to set this; previously it only had the desired effect on functions.(cc #39699)