Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • BIND BIND
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 565
    • Issues 565
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 93
    • Merge requests 93
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ISC Open Source ProjectsISC Open Source Projects
  • BINDBIND
  • Issues
  • #2595
Closed
Open
Issue created Mar 22, 2021 by Michal Nowak@mnowakOwner

dig crash: l = query->lookup;

dig crashed in the serve-stale system test on v9_11_sub (25bd30914f5d8ce2b78717599757105ea0d11035) with recent serve stale backports in place:

I:serve-stale:flush cache, re-enable serve-stale and query again (38)
tests.sh: line 439: 27066 Segmentation fault      (core dumped) $DIG -p ${PORT} @10.53.0.1 data.example TXT > dig.out.test$n
I:serve-stale:failed
I:serve-stale:Core dump(s) found: serve-stale/core.27066 
R:serve-stale:FAIL
D:serve-stale:backtrace from serve-stale/core.27066:
D:serve-stale:--------------------------------------------------------------------------------
D:serve-stale:Core was generated by `/builds/isc-private/bind9/bin/dig/.libs/dig -p 5200 @10.53.0.1 data.example TXT'.
D:serve-stale:Program terminated with signal SIGSEGV, Segmentation fault.
D:serve-stale:#0  0x000055f3182e09f5 in send_udp (query=0xffffffffffffffff) at dighost.c:3164
D:serve-stale:3164		l = query->lookup;
D:serve-stale:[Current thread is 1 (Thread 0x7f0951828700 (LWP 27080))]
D:serve-stale:#0  0x000055f3182e09f5 in send_udp (query=0xffffffffffffffff) at dighost.c:3164
D:serve-stale:#1  0x000055f3182df69a in send_done (_task=0x7f095182f010, event=0x7f095182e170) at dighost.c:2937
D:serve-stale:#2  0x00007f09542a0fd2 in dispatch (manager=0x7f095182e010) at task.c:1157
D:serve-stale:#3  0x00007f09542a16e8 in run (uap=0x7f095182e010) at task.c:1331
D:serve-stale:#4  0x00007f0953f7ffa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
D:serve-stale:#5  0x00007f0953d054cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
D:serve-stale:--------------------------------------------------------------------------------
D:serve-stale:full backtrace from serve-stale/core.27066 saved in serve-stale/core.27066-backtrace.txt
D:serve-stale:core dump serve-stale/core.27066 archived as serve-stale/core.27066.gz
[New LWP 27080]
[New LWP 27066]
[New LWP 27082]
[New LWP 27081]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/builds/isc-private/bind9/bin/dig/.libs/dig -p 5200 @10.53.0.1 data.example TXT'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x000055f3182e09f5 in send_udp (query=0xffffffffffffffff) at dighost.c:3164
3164		l = query->lookup;
[Current thread is 1 (Thread 0x7f0951828700 (LWP 27080))]

Thread 4 (Thread 0x7f0951027700 (LWP 27081)):
#0  futex_wait_cancelable (private=0, expected=0, futex_word=0x7f09518300a0) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
        __ret = -512
        oldtype = 0
        err = <optimized out>
        oldtype = <optimized out>
        err = <optimized out>
        __ret = <optimized out>
        resultvar = <optimized out>
        __arg4 = <optimized out>
        __arg3 = <optimized out>
        __arg2 = <optimized out>
        __arg1 = <optimized out>
        _a4 = <optimized out>
        _a3 = <optimized out>
        _a2 = <optimized out>
        _a1 = <optimized out>
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x7f0951830028, cond=0x7f0951830078) at pthread_cond_wait.c:502
        spin = 0
        buffer = {__routine = 0x7f0953f85d80 <__condvar_cleanup_waiting>, __arg = 0x7f0951026e10, __canceltype = 1359113760, __prev = 0x0}
        cbuffer = {wseq = 12, cond = 0x7f0951830078, mutex = 0x7f0951830028, private = 0}
        rt = <optimized out>
        err = <optimized out>
        g = 0
        flags = <optimized out>
        g1_start = <optimized out>
        signals = <optimized out>
        result = 0
        wseq = 12
        seq = 6
        private = 0
        maxspin = <optimized out>
        err = <optimized out>
        result = <optimized out>
        wseq = <optimized out>
        g = <optimized out>
        seq = <optimized out>
        flags = <optimized out>
        private = <optimized out>
        signals = <optimized out>
        g1_start = <optimized out>
        spin = <optimized out>
        buffer = <optimized out>
        cbuffer = <optimized out>
        rt = <optimized out>
        s = <optimized out>
#2  __pthread_cond_wait (cond=0x7f0951830078, mutex=0x7f0951830028) at pthread_cond_wait.c:655
No locals.
#3  0x00007f09542abe22 in run (uap=0x7f0951830010) at timer.c:817
        manager = 0x7f0951830010
        now = {seconds = 1616408150, nanoseconds = 831112000}
        result = 0
#4  0x00007f0953f7ffa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
        ret = <optimized out>
        pd = <optimized out>
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139677990549248, -8078676509628610609, 140720729018446, 140720729018447, 139677990549248, 0, 8210172624732112847, 8210169235483740111}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5  0x00007f0953d054cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

Thread 3 (Thread 0x7f0950826700 (LWP 27082)):
#0  0x00007f0953d057ef in epoll_wait (epfd=5, events=0x7f0951832010, maxevents=64, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30
        resultvar = 18446744073709551612
        sc_cancel_oldtype = 0
        sc_ret = <optimized out>
#1  0x00007f09542cdcb6 in watcher (uap=0x7f095182ef30) at socket.c:4318
        manager = 0x7f095182ef30
        done = false
        cc = 1
        fnname = 0x7f09542f0a65 "epoll_wait()"
        strbuf = '\000' <repeats 127 times>
#2  0x00007f0953f7ffa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
        ret = <optimized out>
        pd = <optimized out>
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139677982156544, -8078676509628610609, 140720729018270, 140720729018271, 139677982156544, 0, 8210175923803867087, 8210169235483740111}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#3  0x00007f0953d054cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

Thread 2 (Thread 0x7f095186a780 (LWP 27066)):
#0  0x00007f0953c43b36 in __GI___sigsuspend (set=0x7ffc1910d0f0) at ../sysdeps/unix/sysv/linux/sigsuspend.c:26
        resultvar = 18446744073709551102
        sc_cancel_oldtype = 0
        sc_ret = <optimized out>
#1  0x00007f09542aeff5 in isc__app_ctxrun (ctx0=0x7f0954328ba0 <isc_g_appctx>) at app.c:723
        result = 0
        ctx = 0x7f0954328ba0 <isc_g_appctx>
        event = 0x0
        next_event = 0x0
        task = 0x0
        sset = {__val = {0 <repeats 16 times>}}
        strbuf = "\000\000\000\000\000\000\000\000\250\214\062T\t\177\000\000P\321\020\031\374\177\000\000p\321\020\031\374\177\000\000\360\322\020\031\374\177\000\000\246\327-T\t\177\000\000\200\321\020\031+\000\000\000\340\031.T#\000\000\000\255\322.T\t\177\000\000\300\214\062T\t\177\000\000\020\321\020\031\374\177\000\000\263\201%T\t\177\000\000h", '\000' <repeats 15 times>, "\341\214.\030\363U\000\000\020\360\202Q\001\000\005"
#2  0x00007f09542af3b7 in isc__app_run () at app.c:760
No locals.
#3  0x00007f09542b1969 in isc_app_run () at ../app_api.c:207
        result = 32521
#4  0x000055f3182d23bb in dig_startup () at dig.c:2346
        result = 0
#5  0x000055f3182d256a in main (argc=6, argv=0x7ffc1910d2f8) at dig.c:2378
No locals.

Thread 1 (Thread 0x7f0951828700 (LWP 27080)):
#0  0x000055f3182e09f5 in send_udp (query=0xffffffffffffffff) at dighost.c:3164
        l = 0x0
        result = 22003
        sendbuf = 0x7f0951829058
        next = 0x7f0951827df0
#1  0x000055f3182df69a in send_done (_task=0x7f095182f010, event=0x7f095182e170) at dighost.c:2937
        sevent = 0x7f095182e170
        b = 0x0
        query = 0x7f095183c018
        next = 0xffffffffffffffff
        l = 0x55f319f08488
#2  0x00007f09542a0fd2 in dispatch (manager=0x7f095182e010) at task.c:1157
        dispatch_count = 3
        done = false
        finished = false
        requeue = false
        event = 0x7f095182e170
        task = 0x7f095182f010
#3  0x00007f09542a16e8 in run (uap=0x7f095182e010) at task.c:1331
        manager = 0x7f095182e010
#4  0x00007f0953f7ffa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
        ret = <optimized out>
        pd = <optimized out>
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139677998941952, -8078676509628610609, 140720729018382, 140720729018383, 139677998941952, 0, 8210173723706869711, 8210169235483740111}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5  0x00007f0953d054cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

Core dump: core.27066.gz

Edited Jun 16, 2021 by Michal Nowak
Assignee
Assign to
Time tracking