diff options
| author | Stefan Boberg <[email protected]> | 2026-03-16 10:56:11 +0100 |
|---|---|---|
| committer | GitHub Enterprise <[email protected]> | 2026-03-16 10:56:11 +0100 |
| commit | 8c3ba4e8c522d119df3cb48966e36c0eaa80aeb9 (patch) | |
| tree | cf51b07e097904044b4bf65bc3fe0ad14134074f /tsan.supp | |
| parent | Merge branch 'sb/no-network' of https://github.ol.epicgames.net/ue-foundation... (diff) | |
| parent | Enable cross compilation of Windows targets on Linux (#839) (diff) | |
| download | zen-sb/no-network.tar.xz zen-sb/no-network.zip | |
Merge branch 'main' into sb/no-networksb/no-network
Diffstat (limited to 'tsan.supp')
| -rw-r--r-- | tsan.supp | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -20,3 +20,15 @@ # TSAN reports as a race. This is benign: the slot is always NULL and writing NULL # to it has no observable effect. race:eastl::hashtable*DoFreeNodes* + +# UE::Trace's GetUid() uses a racy static uint32 cache (Uid = Uid ? Uid : Initialize()) +# as a fast path to avoid re-entering Initialize(). The actual initialization is done via +# a thread-safe static (Uid_ThreadSafeInit) inside Initialize(), so the worst case is +# redundant calls to Initialize() which always returns the same value. +race:*Fields::GetUid* + +# TRACE_CPU_SCOPE generates a function-local `static int32 scope_id` that is lazily +# initialized without synchronization (if (0 == scope_id) scope_id = ScopeNew(...)). +# Same benign pattern as GetUid: the worst case is redundant calls to ScopeNew() which +# always returns the same value for a given scope name. +race:*$trace_scope_id* |