Package: libc6
Version: 2.33-7
Severity: normal
Tags: upstream
Forwarded: https://sourceware.org/bugzilla/show_bug.cgi?id=27653
Affects: libasan6

This has been reported upstream, but let's give it more visibility
(this could save hours of debugging...).

In short, using LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.6
with some executables can make the executable hang.

Examples:

With

  LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.6 inkscape

Thread 1 (Thread 0x7f07770c8bc0 (LWP 424733) "inkscape"):
#0  __futex_abstimed_wait_common64 (futex_word=futex_word@entry=0x7f077dd21be8 
<_nl_state_lock+8>, expected=expected@entry=2, clockid=clockid@entry=0, 
abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=false) 
at ../sysdeps/nptl/futex-internal.c:87
        err = -512
        op = 393
#1  0x00007f077db3f148 in __GI___futex_abstimed_wait64 
(futex_word=futex_word@entry=0x7f077dd21be8 <_nl_state_lock+8>, 
expected=expected@entry=2, clockid=clockid@entry=0, abstime=abstime@entry=0x0, 
private=private@entry=0) at ../sysdeps/nptl/futex-internal.c:112
#2  0x00007f077db37ad5 in __pthread_rwlock_wrlock_full64 (abstime=0x0, 
clockid=0, rwlock=0x7f077dd21be0 <_nl_state_lock>) at 
pthread_rwlock_common.c:829
        private = 0
        err = <optimized out>
        may_share_futex_used_flag = <optimized out>
        wpf = <optimized out>
        ready = false
        r = <optimized out>
        result = <optimized out>
#3  __GI___pthread_rwlock_wrlock (rwlock=0x7f077dd21be0 <_nl_state_lock>) at 
pthread_rwlock_wrlock.c:27
        result = <optimized out>
#4  0x00007f077db8375e in set_binding_values (domainname=0x7f077b8be5b7 
"gspell-1", dirnamep=0x0, codesetp=0x7ffdaf37e428) at bindtextdom.c:91
        __p = <optimized out>
        binding = <optimized out>
        modified = <optimized out>
#5  0x00007f077db83bd1 in set_binding_values (codesetp=0x7ffdaf37e428, 
dirnamep=0x0, domainname=<optimized out>) at bindtextdom.c:82
[...]

and with

  LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.6 vlc

Thread 1 (Thread 0x7f2f9be09340 (LWP 424824) "vlc"):
#0  __futex_abstimed_wait_common64 (futex_word=futex_word@entry=0x7f2f9c651be8 
<_nl_state_lock+8>, expected=expected@entry=2, clockid=clockid@entry=0, 
abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=false) 
at ../sysdeps/nptl/futex-internal.c:87
        clockbit = <optimized out>
        err = -512
        op = 393
#1  0x00007f2f9c675148 in __GI___futex_abstimed_wait64 
(futex_word=futex_word@entry=0x7f2f9c651be8 <_nl_state_lock+8>, 
expected=expected@entry=2, clockid=clockid@entry=0, abstime=abstime@entry=0x0, 
private=private@entry=0) at ../sysdeps/nptl/futex-internal.c:112
No locals.
#2  0x00007f2f9c66dad5 in __pthread_rwlock_wrlock_full64 (abstime=0x0, 
clockid=0, rwlock=0x7f2f9c651be0 <_nl_state_lock>) at 
pthread_rwlock_common.c:829
        private = 0
        err = <optimized out>
        may_share_futex_used_flag = <optimized out>
        wpf = <optimized out>
        ready = false
        r = <optimized out>
        may_share_futex_used_flag = <optimized out>
        r = <optimized out>
        done = <optimized out>
        wpf = <optimized out>
        ready = <optimized out>
        __value = <optimized out>
        prefer_writer = <optimized out>
        private = <optimized out>
        wf = <optimized out>
        err = <optimized out>
        w = <optimized out>
        w = <optimized out>
        private = <optimized out>
        err = <optimized out>
        w = <optimized out>
        wf = <optimized out>
        wf = <optimized out>
        __value = <optimized out>
#3  __GI___pthread_rwlock_wrlock (rwlock=0x7f2f9c651be0 <_nl_state_lock>) at 
pthread_rwlock_wrlock.c:27
        result = <optimized out>
#4  0x00007f2f9c4b375e in set_binding_values (domainname=0x7f2f9c2f666b "vlc", 
dirnamep=0x0, codesetp=0x7fff24056378) at bindtextdom.c:91
        __p = <optimized out>
        binding = <optimized out>
        modified = <optimized out>
[...]

and similarly with gnuplot:

Thread 1 (Thread 0x7fbcf39e4bc0 (LWP 424576) "gnuplot"):
#0  __futex_abstimed_wait_common64 (futex_word=futex_word@entry=0x7fbcf8be8be8 
<_nl_state_lock+8>, expected=expected@entry=2, clockid=clockid@entry=0, 
abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=false) 
at ../sysdeps/nptl/futex-internal.c:87
        err = -512
        op = 393
#1  0x00007fbcf8c06148 in __GI___futex_abstimed_wait64 
(futex_word=futex_word@entry=0x7fbcf8be8be8 <_nl_state_lock+8>, 
expected=expected@entry=2, clockid=clockid@entry=0, abstime=abstime@entry=0x0, 
private=private@entry=0) at ../sysdeps/nptl/futex-internal.c:112
#2  0x00007fbcf8bfead5 in __pthread_rwlock_wrlock_full64 (abstime=0x0, 
clockid=0, rwlock=0x7fbcf8be8be0 <_nl_state_lock>) at 
pthread_rwlock_common.c:829
        private = 0
        err = <optimized out>
        may_share_futex_used_flag = <optimized out>
        wpf = <optimized out>
        ready = false
        r = <optimized out>
        result = <optimized out>
#3  __GI___pthread_rwlock_wrlock (rwlock=0x7fbcf8be8be0 <_nl_state_lock>) at 
pthread_rwlock_wrlock.c:27
        result = <optimized out>
#4  0x00007fbcf8a4a75e in set_binding_values (domainname=0x7fbcf7de4f51 
"gtk30-properties", dirnamep=0x7fff4f41f848, codesetp=0x0) at bindtextdom.c:91
        __p = <optimized out>
        binding = <optimized out>
        modified = <optimized out>
[...]

-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'stable-updates'), (500, 
'stable-security'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.16.0-3-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=POSIX, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libc6 depends on:
ii  libgcc-s1  12-20220302-1

Versions of packages libc6 recommends:
ii  libidn2-0  2.3.2-2

Versions of packages libc6 suggests:
ii  debconf [debconf-2.0]  1.5.79
ii  glibc-doc              2.33-7
ii  libc-l10n              2.33-7
pn  libnss-nis             <none>
pn  libnss-nisplus         <none>
ii  locales                2.33-7

-- debconf information excluded

-- 
Vincent Lefèvre <vinc...@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

Reply via email to