<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in many_tls_keys_pthread.cpp</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>d08e5d4c - Make lsan TestCases more consistent</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#d08e5d4c</link>
        <description>Make lsan TestCases more consistentInlining `LSAN_BASE` makes the lsan TestCases more consistent to the other sanitizer TestCases.It is also needed on Windows: https://reviews.llvm.org/D115103Reviewed By: vitalybukaDifferential Revision: https://reviews.llvm.org/D124322

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Mon, 09 May 2022 17:58:53 +0000</pubDate>
        <dc:creator>Clemens Wasser &lt;clemens.wasser@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>afec9538 - [sanitizer] Simplify GetTls with dl_iterate_phdr on Linux and use it on musl/FreeBSD</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#afec9538</link>
        <description>[sanitizer] Simplify GetTls with dl_iterate_phdr on Linux and use it on musl/FreeBSD... so that FreeBSD specific GetTls/glibc specific pthread_self code can beremoved. This also helps FreeBSD arm64/powerpc64 which don&apos;t have GetTlsimplementation yet.GetTls is the range of* thread control block and optional TLS_PRE_TCB_SIZE* static TLS blocks plus static TLS surplusOn glibc, lsan requires the range to include`pthread::{specific_1stblock,specific}` so that allocations only referenced by`pthread_setspecific` can be scanned.This patch uses `dl_iterate_phdr` to collect TLS blocks. Find the onewith `dlpi_tls_modid==1` as one of the initially loaded module, then findconsecutive ranges. The boundaries give us addr and size.This allows us to drop the glibc internal `_dl_get_tls_static_info` and`InitTlsSize`. However, huge glibc x86-64 binaries with numerous shared objectsmay observe time complexity penalty, so exclude them for now. Use the simplifiedmethod with non-Android Linux for now, but in theory this can be used with *BSDand potentially other ELF OSes.This removal of RISC-V `__builtin_thread_pointer` makes the code compilable withmore compiler versions (added in Clang in 2020-03, added in GCC in 2020-07).This simplification enables D99566 for TLS Variant I architectures.Note: as of musl 1.2.2 and FreeBSD 12.2, dlpi_tls_data returned bydl_iterate_phdr is not desired: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254774This can be worked around by using `__tls_get_addr({modid,0})` insteadof `dlpi_tls_data`. The workaround can be shared with the workaround for glibc&lt;2.25.This fixes some tests on Alpine Linux x86-64 (musl)```test/lsan/Linux/cleanup_in_tsd_destructor.ctest/lsan/Linux/fork.cpptest/lsan/Linux/fork_threaded.cpptest/lsan/Linux/use_tls_static.cpptest/lsan/many_tls_keys_thread.cpptest/msan/tls_reuse.cpp```and `test/lsan/TestCases/many_tls_keys_pthread.cpp` on glibc aarch64.The number of sanitizer test failures does not change on FreeBSD/amd64 12.2.Differential Revision: https://reviews.llvm.org/D98926

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Thu, 15 Apr 2021 22:34:43 +0000</pubDate>
        <dc:creator>Fangrui Song &lt;i@maskray.me&gt;</dc:creator>
    </item>
<item>
        <title>34f8a7f9 - [lsan][test] Disable many_tls_keys_pthread.cpp on AArch64</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#34f8a7f9</link>
        <description>[lsan][test] Disable many_tls_keys_pthread.cpp on AArch64Partially reverts 04dbb63400c5fa2f263d7473272509be572a367a.This test requires 9be8f8b34d9b150cd1811e3556fe9d0cd735ae29which is/has been reverted a few times but this test wasleft enabled.Currently that change is reverted and this test is failing:http://lab.llvm.org:8011/#/builders/7/builds/2327

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Tue, 06 Apr 2021 10:25:52 +0000</pubDate>
        <dc:creator>David Spickett &lt;david.spickett@linaro.org&gt;</dc:creator>
    </item>
<item>
        <title>04dbb634 - [lsan][test] Enable many_tls_keys_pthread.cpp and disable swapcontext.cpp/fork_and_leak.cpp</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#04dbb634</link>
        <description>[lsan][test] Enable many_tls_keys_pthread.cpp and disable swapcontext.cpp/fork_and_leak.cppWith D98926, many_tls_keys_pthread.cpp appears to be working.On glibc 2.30-0ubuntu2, swapcontext.cpp and Linux/fork_and_leak.cpp work finebut they strangely fail on clang-cmake-aarch64-full(https://lab.llvm.org/buildbot/#/builders/7/builds/2240).Disable them for now.Note: check-lsan was recently enabled on AArch64 in D98985. A test takes10+ seconds. We should figure out the bottleneck.

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Fri, 26 Mar 2021 18:26:08 +0000</pubDate>
        <dc:creator>Fangrui Song &lt;i@maskray.me&gt;</dc:creator>
    </item>
<item>
        <title>fdf97bc7 - [test] Enable check-lsan on aarch64-*-linux</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#fdf97bc7</link>
        <description>[test] Enable check-lsan on aarch64-*-linux`check-lsan` passed on an aarch64-*-linux machine.Unsupport `many_tls_keys_pthread.cpp` for now: it requires GetTls to include`specific_1stblock` and `specific` in `struct pthread`.Differential Revision: https://reviews.llvm.org/D98985

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Tue, 23 Mar 2021 18:11:26 +0000</pubDate>
        <dc:creator>Fangrui Song &lt;i@maskray.me&gt;</dc:creator>
    </item>
<item>
        <title>f7877dd4 - Commit missing part of &quot;Split many_tls_keys.cpp into two tests&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#f7877dd4</link>
        <description>Commit missing part of &quot;Split many_tls_keys.cpp into two tests&quot;https://reviews.llvm.org/D67428This change was lost due to a file rename and modification.llvm-svn: 371941

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Sun, 15 Sep 2019 21:04:50 +0000</pubDate>
        <dc:creator>Kamil Rytarowski &lt;n54@gmx.com&gt;</dc:creator>
    </item>
<item>
        <title>d2e0f207 - Split many_tls_keys.cpp into two tests</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp#d2e0f207</link>
        <description>Split many_tls_keys.cpp into two testsSummary:many_tls_keys_pthread.cpp for TSDmany_tls_keys_thread.cpp for TLSThe TSD test is unsupported on NetBSD as it assumes TLS used internally.TSD on NetBSD does not use TLS.Reviewers: joerg, vitalybuka, mgorny, dvyukov, kccReviewed By: vitalybukaSubscribers: jfb, llvm-commits, #sanitizersTags: #sanitizers, #llvmDifferential Revision: https://reviews.llvm.org/D67428llvm-svn: 371757

            List of files:
            /llvm-project-15.0.7/compiler-rt/test/lsan/TestCases/many_tls_keys_pthread.cpp</description>
        <pubDate>Thu, 12 Sep 2019 18:55:18 +0000</pubDate>
        <dc:creator>Kamil Rytarowski &lt;n54@gmx.com&gt;</dc:creator>
    </item>
</channel>
</rss>
