GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — gh-112536: Set up TSAN CI for free-threading by corona10 · Pull Request #116555 · python/cpython Conversation
|
|
Hmm, I locally passed the thread-sanitizer test with clang, I am taking a look why CI has an issue. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Weired.. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
I need to check on my Linux machine later. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| - name: Set up GCC-10 for ASAN | ||
| uses: egor-tensin/setup-gcc@v1 | ||
| with: | ||
| version: 11 |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
The version says "11" but the step name says "GCC-10"
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| - name: Display build info | ||
| run: make pythoninfo | ||
| - name: Tests | ||
| run: ./python -m test --pgo -j4 # Reduce test scope |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I think we'll want a configuration specifically for tsan. Maybe a --tsan option? We'll only want to run tests that actually use threading.
Brett had a list of tests that fail with PYTHON_GIL=0 -- those are probably a good starting point:
swtaarrs@1fe9165#diff-590c02490d066378045dd48d62e86dc85d3fb4ad934b6a2b2b0b1112e59eaefb
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| /***************************/ | ||
|
|
||
| static int | ||
| _Py_NO_SANITIZE_THREAD |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I've had a better experience using suppression lists rather than marking functions as _Py_NO_SANITIZE_THREAD:
supressions.txt somwhere (maybe Tools/tsan/supressions.txt?)TSAN_OPTIONS="suppressions=<path_to_supressions.txt>"See https://github.com/google/sanitizers/wiki/ThreadSanitizerSuppressions
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| with: | ||
| version: 11 | ||
| - name: Configure CPython | ||
| run: ./configure --disable-gil --with-thread-sanitizer |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Do we want --with-pydebug?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Actual PR for this issue will be: #116872 |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.