[all-commits] [llvm/llvm-project] f811c7: [rtsan][Apple] Add interceptor for _os_nospin_lock...
thetruestblue via All-commits
all-commits at lists.llvm.org
Sat May 10 11:03:25 PDT 2025
Branch: refs/heads/release/20.x
Home: https://github.com/llvm/llvm-project
Commit: f811c7df0a105549aeae2aa42ca31f6d55e652f2
https://github.com/llvm/llvm-project/commit/f811c7df0a105549aeae2aa42ca31f6d55e652f2
Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
Date: 2025-05-10 (Sat, 10 May 2025)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[rtsan][Apple] Add interceptor for _os_nospin_lock_lock (#131034)
Follows the discussion here:
https://github.com/llvm/llvm-project/pull/129309
Recently, the test
`TestRtsan.AccessingALargeAtomicVariableDiesWhenRealtime` has been
failing on newer MacOS versions, because the internal locking mechanism
in `std::atomic<T>::load` (for types `T` that are larger than the
hardware lock-free limit), has changed to a function that wasn't being
intercepted by rtsan.
This PR introduces an interceptor for `_os_nospin_lock_lock`, which is
the new internal locking mechanism.
_Note: we'd probably do well to introduce interceptors for
`_os_nospin_lock_unlock` (and `os_unfair_lock_unlock`) too, which also
appear to have blocking implementations. This can follow in a separate
PR._
(cherry picked from commit 481a55a3d9645a6bc1540d326319b78ad8ed8db1)
Commit: b7b834e2a20ed295eaab596dd348db5463b951d8
https://github.com/llvm/llvm-project/commit/b7b834e2a20ed295eaab596dd348db5463b951d8
Author: thetruestblue <bblueconway at gmail.com>
Date: 2025-05-10 (Sat, 10 May 2025)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[RTSan][Darwin] Adjust OSSpinLock/_os_nospin_lock interceptor and tests (#132867)
These changes align with these lock types and allows builds and tests to
pass with various SDKS.
rdar://147067322
(cherry picked from commit 7cc4472037b43971bd3ee373fe75b5043f5abca9)
Compare: https://github.com/llvm/llvm-project/compare/4370072022e5...b7b834e2a20e
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list