Uploaded image for project: 'Support'
  1. Support
  2. SUPPORT-226

SEGV in ods-signerd shortly after zone removals

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: OpenDNSSEC 1.4.13
    • Fix Version/s: None
    • Component/s: Signer
    • Labels:
      None
    • Environment:

      NetBSD/amd64 7.1_STABLE

       

      Description

      A long-running ods-signerd crashed shortly after a couple of zones were removed from the configuration.  A resulting GDB session shows garbage has infested one of the pointers, and also possibly other data:

       

      # gdb /usr/pkgsrc/security/opendnssec/work/opendnssec-1.4.13/signer/src/ods-signerd ods-signerd.core-5
      GNU gdb (GDB) 7.7.1
      Copyright (C) 2014 Free Software Foundation, Inc.
      License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
      This is free software: you are free to change and redistribute it.
      There is NO WARRANTY, to the extent permitted by law. Type "show copying"
      and "show warranty" for details.
      This GDB was configured as "x86_64--netbsd".
      Type "show configuration" for configuration details.
      For bug reporting instructions, please see:
      <http://www.gnu.org/software/gdb/bugs/>.
      Find the GDB manual and other documentation resources online at:
      <http://www.gnu.org/software/gdb/documentation/>.
      For help, type "help".
      Type "apropos word" to search for commands related to "word"...
      Reading symbols from /usr/pkgsrc/security/opendnssec/work/opendnssec-1.4.13/signer/src/ods-signerd...done.
      [New process 4]
      [New process 2083]
      [New process 9]
      [New process 8]
      [New process 7]
      [New process 6]
      [New process 3]
      [New process 2]
      [New process 1]
      
      warning: .dynamic section for "/usr/pkg/lib/libxml2.so.2" is not at the expected address (wrong library or version mismatch?)
      
      warning: .dynamic section for "/usr/pkg/lib/softhsm/libsofthsm.so" is not at the expected address (wrong library or version mismatch?)
      Core was generated by `ods-signerd'.
      Program terminated with signal SIGSEGV, Segmentation fault.
      #0 netio_dispatch (netio=0x7f7ff730e0c0, timeout=timeout@entry=0x0,
      sigmask=sigmask@entry=0x0) at wire/netio.c:250
      250 relative.tv_sec = handler->timeout->tv_sec;
      (gdb) p handler
      $1 = (netio_handler_type *) 0x7f7fded528b8
      (gdb) p *$->timeout
      Cannot access memory at address 0x3520302031093343
      (gdb) p handler
      $2 = (netio_handler_type *) 0x7f7fded528b8
      (gdb) p *$
      $3 = {fd = 1313409328, timeout = 0x3520302031093343,
      user_data = 0x6638386236613820,
      event_types = (NETIO_EVENT_TIMEOUT | unknown: 1650603312),
      event_handler = 0x7173647269202064}
      (gdb) where
      #0 netio_dispatch (netio=0x7f7ff730e0c0, timeout=timeout@entry=0x0,
      sigmask=sigmask@entry=0x0) at wire/netio.c:250
      #1 0x000000000040e15c in xfrhandler_start (xfrhandler=0x7f7ff733c090)
      at daemon/xfrhandler.c:133
      #2 0x000000000040e662 in xfrhandler_thread_start (arg=<optimized out>)
      at daemon/engine.c:255
      #3 0x00007f7ff520ac1c in ?? () from /usr/lib/libpthread.so.1
      #4 0x00007f7ff6083c70 in ?? () from /usr/lib/libc.so.12
      Cannot access memory at address 0x7f7ff41fe000
      (gdb) 

       

      The two zones were removed via "ods-ksmutil zone delete" about 10 minutes prior to the crash.

       

      Furthermore, I suspect that ods-signerd has one or more memory leaks.  After restarting ods-signerd, it has a virtual size of around 452MB, while the core file was 1.2GB large.

       

        Attachments

          Activity

            People

            Assignee:
            hodar Hoda Rohani
            Reporter:
            he Håvard Eidnes
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: