-
Notifications
You must be signed in to change notification settings - Fork 200
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
[common] Update ASan to be compatible with Clang 18 #1930
Conversation
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.
Reviewable status: 0 of 2 files reviewed, 1 unresolved discussion, not enough approvals from maintainers (2 more required), not enough approvals from different teams (1 more required, approved so far: Intel)
a discussion (no related file):
Must be rebased on top of #1929. Blocking.
d4900ec
to
ecb165e
Compare
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.
Reviewed 1 of 2 files at r1, 1 of 1 files at r2, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion, not enough approvals from maintainers (1 more required)
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.
Reviewed 1 of 2 files at r1, 1 of 1 files at r2, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion
f05ae1c
to
78776a5
Compare
The base branch was changed.
Newer Clang versions added more ASan callbacks, in particular `__asan_register_elf_globals()` and `__asan_unregister_elf_globals()`. Our code replicates exactly what the Clang/LLVM code does for these two callbacks. Signed-off-by: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com>
ecb165e
to
f900466
Compare
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.
Reviewable status: all files reviewed, all discussions resolved, not enough approvals from maintainers (1 more required), not enough approvals from different teams (1 more required, approved so far: Intel)
a discussion (no related file):
Previously, dimakuv (Dmitrii Kuvaiskii) wrote…
Must be rebased on top of #1929. Blocking.
Done
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.
Reviewed 1 of 2 files at r1, 1 of 1 files at r2, all commit messages.
Reviewable status: all files reviewed, all discussions resolved, not enough approvals from different teams (1 more required, approved so far: Intel)
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.
Reviewable status: complete! all files reviewed, all discussions resolved
Description of the changes
Newer Clang versions added more ASan callbacks, in particular
__asan_register_elf_globals()
and__asan_unregister_elf_globals()
. Our code replicates exactly what the Clang/LLVM code does for these two callbacks.See:
Why these callbacks were added exactly, I am not sure. All I understand is that in some mode, on ELF-based platforms, these callbacks are called instead of a more generic
__asan_register_globals()
. See these links, maybe someone will get a better understanding of this change:How to test this PR?
CI is enough for older ASan versions. To test newer ASan versions, run on Ubuntu 24.04 (and default Clang version there, which is v18).
This change is