test: add TSan suppressions for Gazebo sim transport

Running SITL with the Gazebo bridge under ThreadSanitizer reports many data races
inside libzmq and gz-transport (and the GZBridge glue) - third-party simulation
transport that is not in the flight path or the SIH-based CI and that we cannot
fix. Add a suppressions file so the TSan signal stays usable for finding real
races. Use via TSAN_OPTIONS="suppressions=test/sitl_tsan.supp".
This commit is contained in:
Julian Oes
2026-06-18 20:45:30 +12:00
committed by Ramon Roche
parent aed9c16bf1
commit ccd444726e

17
test/sitl_tsan.supp Normal file
View File

@@ -0,0 +1,17 @@
# ThreadSanitizer suppressions for SITL runs that use the Gazebo bridge.
#
# These are races inside the third-party simulation transport (ZeroMQ and
# gz-transport) and the PX4<->Gazebo bridge glue. None of it is in the flight
# code path or the SIH-based CI, and we can't fix the prebuilt libraries -
# suppressing it keeps TSan usable for finding real races in flight code.
#
# Do NOT add flight-code symbols here. Use: TSAN_OPTIONS="suppressions=<this file>"
# ZeroMQ internals (background ZMQbg/IO threads)
called_from_lib:libzmq.so.5
# gz-transport library
race:gz::transport
# PX4 <-> Gazebo bridge glue (simulation only, not flight, not in SIH CI)
race:GZBridge