Skip to content

Improvement: Add TSan to sanitizer CI and fix the data race it finds #228

Description

@MaciejSalwa543

Important

Make sure to link this issue by including Closes #228 in PR

What

sanitizers.yml's matrix only runs asan_ubsan_lsan — TSan is needed also.

Ran TSan+UBSan manually against score/time_daemon/... returned 2 failures,
both ThreadSanitizer: data race.

  • ptp_control_flow_divider_test — in EventDrivenMachine's stop_token wait path
    (event_driven_machine.cpp:28). Self-pipe-wakeup-vs-teardown races are a common real bug shape
    here — looks like a genuine issue, not a false positive.
  • job_runner_test — in score_baselibs' Meyer-singleton logging init (GetSingletonWithFence)
    — looks more like a known TSan false-positive on fence-based lock-free init, not something to
    fix in this repo.

Acceptance Criteria

  • Add TSan to sanitizers.yml's matrix
  • Confirm and fix/suppress findings in score/time_daemon/ submodule only

References

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions