NetBSD-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: script hanging with locking bug
On Tue, 25 Nov 2025, Greg Troxel wrote:
And I find after 15 minutes of hanging:
UID PID PPID CPU PRI NI VSZ RSS WCHAN STAT TTY TIME COMMAND
12345 1803 1 28859 29 0 17652 1072 parked I+ pts/37 0:00.00 script -qec true /dev/null
Attaching, I see:
[Switching to LWP 1803 of process 1803]
0x00007f7f9aa0abba in ___lwp_park60 () from /usr/libexec/ld.elf_so
(gdb) bt
#0 0x00007f7f9aa0abba in ___lwp_park60 () from /usr/libexec/ld.elf_so
#1 0x00007f7f9aa05d45 in _rtld_exclusive_enter () from /usr/libexec/ld.elf_so
#2 0x00007f7f9aa0680d in _rtld_exit () from /usr/libexec/ld.elf_so
#3 0x000079176e95a6c9 in __cxa_finalize () from /usr/lib/libc.so.12
#4 0x000079176e95a3ed in exit () from /usr/lib/libc.so.12
#5 0x00000001cdc0179b in done ()
#6 0x00000001cdc0189a in finish ()
#7 <signal handler called>
#8 0x00007f7f9aa07ff3 in _rtld_symlook_obj () from /usr/libexec/ld.elf_so
#9 0x00007f7f9aa083ea in _rtld_symlook_list () from /usr/libexec/ld.elf_so
#10 0x00007f7f9aa0889f in _rtld_symlook_default () from /usr/libexec/ld.elf_so
#11 0x00007f7f9aa08d4a in _rtld_find_plt_symdef () from /usr/libexec/ld.elf_so
#12 0x00007f7f9aa00bc0 in _rtld_bind () from /usr/libexec/ld.elf_so
#13 0x00007f7f9aa0082d in _rtld_bind_start () from /usr/libexec/ld.elf_so
#14 0x0000000000000246 in ?? ()
#15 0x0000000000002d4f in ?? ()
#16 0x000079176e913b80 in _malloc_prefork () from /usr/lib/libc.so.12
#17 0x00000001cdc0213b in main ()
which looks like an async-signal-safe botch leading to deadlock.
But, running script outside of bup works fine. (Bup does set
LD_LIBRARY_PATH to pick up bup-under-test libs.)
Any insight?
Looks like PR# 56254 again. script(1) should really be rewritten, but, for
now can you change `exit(status)' to `_exit(status)' here:
https://github.com/NetBSD/src/blob/trunk/usr.bin/script/script.c#L361
-RVP
Home |
Main Index |
Thread Index |
Old Index