Bug 2461146 - libqpl.so requires libtsan.so in production environment
Summary: libqpl.so requires libtsan.so in production environment
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: intel-qpl
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Ali Erdinc Koroglu
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-04-23 15:46 UTC by Frantisek Sumsal
Modified: 2026-04-23 15:46 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Frantisek Sumsal 2026-04-23 15:46:33 UTC
Description of problem:
Hello! While tweaking our systemd test suite to make it work on Fedora Rawhide I noticed that libqpl.so is linked against libtsan.so. Apart from the fact that using TSan in a production environment is discouraged (due to both security and performance reasons), this also breaks things when components depending on libqpl.so use different sanitizers, which are incompatible with each other.

For example, mkfs.erofs requires libqpl.so and when you load clang's ASan into the address space, things go sideways:

# rpm -q --requires intel-qpl | grep tsan
libtsan.so.2()(64bit)
# ldd /lib64/libqpl.so.1 | grep 'tsan'
        libtsan.so.2 => /lib64/libtsan.so.2 (0x00007f8a5c800000)

# ldd /usr/bin/mkfs.erofs | grep -E 'libqpl|tsan'
        libqpl.so.1 => /lib64/libqpl.so.1 (0x00007f815fd3c000)
        libtsan.so.2 => /lib64/libtsan.so.2 (0x00007f815e000000)

# LD_PRELOAD=/usr/lib/clang/22/lib/x86_64-redhat-linux-gnu/libclang_rt.asan.so /usr/bin/mkfs.erofs 
FATAL: ThreadSanitizer: memory layout is incompatible, even though ASLR is disabled.
Please file a bug.
==2743==Process memory map follows:
        0x00007fff7000-0x00008fff7000
        0x00008fff7000-0x02008fff7000
...
        0x7ffff7ffd000-0x7ffff7ffe000   /usr/lib64/ld-linux-x86-64.so.2
        0x7ffff7ffe000-0x7ffff7fff000
        0x7ffffffde000-0x7ffffffff000   [stack]
        0xffffffffff600000-0xffffffffff601000   [vsyscall]
==2743==End of process memory map.

Version-Release number of selected component (if applicable):
intel-qpl-1.9.0-1.fc45.x86_64

How reproducible:
always

Steps to Reproduce:
see above

Actual results:
libqpl.so requires libtsan.so

Expected results:
libqpl.so shouldn't require libtsan.so


Note You need to log in before you can comment on or make changes to this bug.