Page MenuHomePhabricator

[sanitizer-common] Delete ancient glibc TLS workaround

Authored by MaskRay on Dec 28 2020, 11:01 AM.


Group Reviewers
Restricted Project

rL156542 introduced this to work around very old glibc. This should be no longer needed.

Diff Detail

Unit TestsFailed

10 msx64 debian > SanitizerCommon-Unit._/Sanitizer-x86_64-Test::SanitizerCommon.ThreadStackTlsWorker
Note: Google Test filter = SanitizerCommon.ThreadStackTlsWorker [==========] Running 1 test from 1 test case. [----------] Global test environment set-up.
800 msx64 debian > ThreadSanitizer-x86_64.ThreadSanitizer-x86_64::tls_race2.cpp
Script: -- : 'RUN: at line 1'; /mnt/disks/ssd0/agent/llvm-project/build/./bin/clang --driver-mode=g++ -fsanitize=thread -Wall -m64 -gline-tables-only -I/mnt/disks/ssd0/agent/llvm-project/compiler-rt/test/tsan/../ -std=c++11 -I/mnt/disks/ssd0/agent/llvm-project/compiler-rt/test/tsan/../ -O1 /mnt/disks/ssd0/agent/llvm-project/compiler-rt/test/tsan/tls_race2.cpp -o /mnt/disks/ssd0/agent/llvm-project/build/projects/compiler-rt/test/tsan/X86_64Config/Output/tls_race2.cpp.tmp && /mnt/disks/ssd0/agent/llvm-project/compiler-rt/test/tsan/deflake.bash 10 /mnt/disks/ssd0/agent/llvm-project/build/projects/compiler-rt/test/tsan/X86_64Config/Output/tls_race2.cpp.tmp | FileCheck /mnt/disks/ssd0/agent/llvm-project/compiler-rt/test/tsan/tls_race2.cpp --check-prefix=CHECK-Linux --check-prefix=CHECK

Event Timeline

MaskRay requested review of this revision.Dec 28 2020, 11:01 AM
MaskRay created this revision.
Herald added a project: Restricted Project. · View Herald TranscriptDec 28 2020, 11:01 AM
vitalybuka accepted this revision.Dec 28 2020, 1:14 PM
This revision is now accepted and ready to land.Dec 28 2020, 1:14 PM
MaskRay abandoned this revision.Mar 25 2021, 10:11 PM

My understanding was incorrect:( On glibc/musl and potentially other libc implementations, the static TLS range may be part of the allocated thread stack. *stk_size -= *tls_size; looks a bit weird, though. Hope D98926 sticks and fixes the problem