https://github.com/vitalybuka created https://github.com/llvm/llvm-project/pull/228929
When a detached thread calls dlsym for a missing symbol, glibc allocates a dl_action_result buffer stored in TLS (__libc_dlerror_result) and frees it during __libc_thread_freeres(), which runs after __nptl_deallocate_tsd(). Because the sanitizer's TSD destructor unregisters the thread during __nptl_deallocate_tsd(), LSan stops scanning that thread's TLS before __libc_thread_freeres() runs, relying on the default *dlerror* suppression or reporting a false positive leak when _dlerror_run is not symbolized. Assisted-by: Gemini _______________________________________________ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
