eclipse-iceoryx / eclipse-iceoryx/iceoryx

ThreadSanitizer for iceoryx

Open
#692 7 comments 0 reactions 1 assignee Claimed by @elBoberido View on GitHub
enhancement good first issue
Dominant language
C++
Stars
2.2k
Forks
492
Avg merge
18h 57m
Merged PRs (30d)
1

Description

## Brief feature description

Integrate the ThreadSanitizer in iceoryx to detect data races.

## Detailed information

It seems Mozilla had good experience finding data races with the ThreadSanitizer https://hacks.mozilla.org/2021/04/eliminating-data-races-in-firefox-a-technical-report/.

I suggest to also integrate it into iceoryx since we are heavily using multi-threaded code.

Tasks
- [x] add ThreadSanitizer to iceoryx by extending the current sanitizers in `IceoryxPlatform.cmake`
- [ ] fix the low hanging fruits
- [ ] add the complex cases to a suppression list and ask maintainer which one should be fixed with a high prio
- [ ] CI runs with the ThreadSanitizer to prevent adding new data races
- investigate the reasons for the massive increase in the test time
- run the tests in parallel jobs, one for hoofs_moduletiontests, posh_moduletests and posh_integrationtests

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.