# This file describes excludes for false-positive issues reported by TSAN.

# assignKernelEventCompletionData re-copies the event's host-visible packet memory into
# kernelEventCompletionData on every queryStatus. The async events handler thread polls
# zeEventQueryStatus while the application thread queries the same event (clWaitForEvents,
# clSetEventCallback, clGetEventProfilingInfo), so both threads run that copy concurrently.
# Each writes the same values read from the same completed packets, so the resulting
# timestamps are identical regardless of interleaving.
race:L0::EventImp*::assignKernelEventCompletionData

# DrmMock::getDriverModelType is generated by ADDMETHOD_CONST, which increments a
# mutable call-count member inside the const method. When multiple threads flush BCS
# tasks concurrently, programEnginePrologue reaches getDriverModelType on each thread and
# the non-atomic counter increment races. This is test-only mock instrumentation; the
# production Drm::getDriverModelType only returns the driver model enum and does not write.
race:DrmMock::getDriverModelType
