summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authormpage <mpage@meta.com>2024-04-15 16:08:25 (GMT)
committerGitHub <noreply@github.com>2024-04-15 16:08:25 (GMT)
commit47832067da54385c6cd5ad0f4f9d7f7dc69ebdb2 (patch)
tree7a91a554840e1b2a7189b984dddc3701ac502528 /.github
parent0823f4361850145152a94e9086bede6a000d8a4a (diff)
downloadcpython-47832067da54385c6cd5ad0f4f9d7f7dc69ebdb2.zip
cpython-47832067da54385c6cd5ad0f4f9d7f7dc69ebdb2.tar.gz
cpython-47832067da54385c6cd5ad0f4f9d7f7dc69ebdb2.tar.bz2
gh-117657: Add TSAN suppressions for the free-threaded build (#117736)
Additionally, reduce the iterations for a few weakref tests that would otherwise take a prohibitively long amount of time (> 1 hour) when TSAN is enabled and the GIL is disabled.
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml2
-rw-r--r--.github/workflows/reusable-tsan.yml6
2 files changed, 7 insertions, 1 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 9e23653..e1a2a62 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -492,6 +492,7 @@ jobs:
with:
config_hash: ${{ needs.check_source.outputs.config_hash }}
options: ./configure --config-cache --with-thread-sanitizer --with-pydebug
+ suppressions_path: Tools/tsan/supressions.txt
build_tsan_free_threading:
name: 'Thread sanitizer (free-threading)'
@@ -501,6 +502,7 @@ jobs:
with:
config_hash: ${{ needs.check_source.outputs.config_hash }}
options: ./configure --config-cache --disable-gil --with-thread-sanitizer --with-pydebug
+ suppressions_path: Tools/tsan/suppressions_free_threading.txt
# CIFuzz job based on https://google.github.io/oss-fuzz/getting-started/continuous-integration/
cifuzz:
diff --git a/.github/workflows/reusable-tsan.yml b/.github/workflows/reusable-tsan.yml
index 96a9c1b..8ddb3b3 100644
--- a/.github/workflows/reusable-tsan.yml
+++ b/.github/workflows/reusable-tsan.yml
@@ -7,6 +7,10 @@ on:
options:
required: true
type: string
+ suppressions_path:
+ description: 'A repo relative path to the suppressions file'
+ required: true
+ type: string
jobs:
build_tsan_reusable:
@@ -30,7 +34,7 @@ jobs:
sudo sysctl -w vm.mmap_rnd_bits=28
- name: TSAN Option Setup
run: |
- echo "TSAN_OPTIONS=suppressions=${GITHUB_WORKSPACE}/Tools/tsan/supressions.txt" >> $GITHUB_ENV
+ echo "TSAN_OPTIONS=suppressions=${GITHUB_WORKSPACE}/${{ inputs.suppressions_path }}" >> $GITHUB_ENV
echo "CC=clang" >> $GITHUB_ENV
echo "CXX=clang++" >> $GITHUB_ENV
- name: Add ccache to PATH