Skip to content

L1Topo: Thread-safety fixes for simulation

Frank Winklmeier requested to merge fwinkl/athena:l1topo_threadcheck into master

First batch of thread-safety fixes for the L1Topo simulation to avoid warnings from the static thread-checker:

  • L1TopoHardware: replace extern variable by static function
    • Use a singleton instead of a extern variable for L1TopoHardwareParameters. This also allows compile time initialization of the map.
    • Replace the hand-crafted variable argument macros with BOOST_PP
  • Mark static variables as const
  • L1TopoInterfaces: Remove unnecessary mutable in Parameter
  • StatusCode: Remove m_checked static variable as this feature was not used anyway
  • Enable static thread-checker for those L1Topo packages that are clean of warnings (all except: L1TopoInterfaces, L1TopoEvent, L1TopoCoreSim, L1TopoConfig)

Further (non-trivial) work is required to make the simulation thread-safe and being followed up in ATR-19783.

cc @stelzer

Merge request reports