FS#58192 - [bind-tools] `dig -6` dumps core when killed

Attached to Project: Arch Linux
Opened by Victor Engmark (l0b0) - Tuesday, 10 April 2018, 21:23 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 27 May 2018, 17:01 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Sébastien Luttringer (seblu)
Architecture All
Severity Very Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description: Sending SIGINT (using Ctrl-c) or SIGTERM to a running `dig -6` process reliably causes it to dump core.

Additional info:

$ pacman --query --owns "$(which dig)"
/usr/bin/dig is owned by bind-tools 9.12.1-1
$ coredumpctl gdb $! <<< bt
[…]
Stack trace of thread 5549:
#0 0x00007ffb67b2c860 raise (libc.so.6)
#1 0x00007ffb67b2dec9 abort (libc.so.6)
#2 0x00007ffb68325370 isc_assertion_failed (libisc.so.1200)
#3 0x0000561053be290e n/a (dig)
#4 0x0000561053bd79ce n/a (dig)
#5 0x0000561053bd297c n/a (dig)
#6 0x00007ffb67b18f4a __libc_start_main (libc.so.6)
#7 0x0000561053bd29ba n/a (dig)

Stack trace of thread 5556:
#0 0x00007ffb67ebc3bd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007ffb683526d1 n/a (libisc.so.1200)
#2 0x00007ffb67eb608c start_thread (libpthread.so.0)
#3 0x00007ffb67bede7f __clone (libc.so.6)

Stack trace of thread 5557:
#0 0x00007ffb67bedfe6 epoll_pwait (libc.so.6)
#1 0x00007ffb6835fb8c n/a (libisc.so.1200)
#2 0x00007ffb67eb608c start_thread (libpthread.so.0)
#3 0x00007ffb67bede7f __clone (libc.so.6)
[…]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `dig -6 en.wikipedia.org'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007ffb67b2c860 in raise () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7ffb691ea280 (LWP 5549))]
(gdb) #0 0x00007ffb67b2c860 in raise () from /usr/lib/libc.so.6
#1 0x00007ffb67b2dec9 in abort () from /usr/lib/libc.so.6
#2 0x00007ffb68325370 in isc_assertion_failed () from /usr/lib/libisc.so.1200
#3 0x0000561053be290e in ?? ()
#4 0x0000561053bd79ce in ?? ()
#5 0x0000561053bd297c in ?? ()
#6 0x00007ffb67b18f4a in __libc_start_main () from /usr/lib/libc.so.6
#7 0x0000561053bd29ba in ?? ()

I had just restarted the machine after upgrading. I do not know how long this has been broken, since I don't use `dig -6` often.

Steps to reproduce:

1. Run `dig -6 en.wikipedia.org &`
2. As a separate command (to resolve $! correctly) `kill $!`

Expected result: A message like "[1]+ Terminated dig -6 en.wikipedia.org".

Actual result: The following output:

dighost.c:4170: INSIST(current_lookup == ((void *)0)) failed, back trace
#0 0x7f185b982418 in ??
#1 0x7f185b98236a in ??
#2 0x5606e4f3090e in ??
#3 0x5606e4f259ce in ??
#4 0x5606e4f2097c in ??
#5 0x7f185b175f4a in ??
#6 0x5606e4f209ba in ??
Aborted (core dumped)
This task depends upon

Closed by  Sébastien Luttringer (seblu)
Sunday, 27 May 2018, 17:01 GMT
Reason for closing:  No response
Comment by Sébastien Luttringer (seblu) - Wednesday, 16 May 2018, 23:15 GMT
Please report this upstream

Loading...