On Tue, Oct 19, 2021 at 07:49:15PM +0200, Mischa wrote:

> On 2021-10-15 20:05, Otto Moerbeek wrote:
> > On Fri, Oct 15, 2021 at 07:47:22PM +0200, Mischa wrote:
> > > On 2021-10-15 19:42, Otto Moerbeek wrote:
> > > > On Fri, Oct 15, 2021 at 07:16:55PM +0200, Mischa wrote:
> > > >
> > > > > On 2021-10-15 18:27, Otto Moerbeek wrote:
> > > > > >
> > > > > > The actual problem (SIGSEGV) happens in the child processes: ktrace 
> > > > > > the
> > > > > > children as well: ktrace -di ...
> > > > > >
> > > > > >     -Otto
> > > > >
> > > > > Thanx Otto.
> > > > > Below is the the kdump with ktrace -di
> > > > > It's quite a lot of data but I didn't want to remove something that
> > > > > could
> > > > > potentially be useful.
> > > > >
> > > > > Mischa
> > > > >
> > > >
> > > > The pattern below happens multiple times:
> > > >
> > > > A recvfrom of 101 bytes and after that a SIGSEGV.
> > > >
> > > > Now we do not know for sure if those two lines are related.
> > > >
> > > > I suspect that it is no coincidence that the 101 is one larger than
> > > > 100...
> > > >
> > > > No other clue yet.
> > > 
> > > Anything else I can collect.
> > 
> > You might want to compile and install nsd wit debug symbols info:
> > 
> >     cd /usr/src/usr.sbin/nsd
> >     make -f Makefile.bsd-wrapper obj
> >     make -f Makefile.bsd-wrapper clean
> >     DEBUG=-g make -f  Makefile.bsd-wrapper
> >     make -f  Makefile.bsd-wrapper install
> > 
> > 
> > Then: collect a gdb trace from a running process: install gdb from
> > ports,
> > run
> >     egdb --pid=pidofnsdchild /usr/sbin/nsd
> > 
> > and wait for the crash.
> > 
> > But I'm mostly unfamiliar with the nsd code and what has been changed
> > recently.  I's say make sure sthen@ and florian@ see this: move to
> > bugs@ as I do not know if they read misc@.
> 
> Thanx Otto.
> 
> As this is my first time using gdb, I need some assistance.
> 
> root@name2:~ # ps -aux | grep nsd
> _nsd     79188  0.0  1.0 101704 86400 ??  Ip      7:31PM    0:00.20 nsd:
> xfrd (nsd)
> _nsd     24002  0.0  0.4 37188 37388 ??  Ip      7:31PM    0:00.29 nsd: main
> (nsd)
> _nsd     44937  0.0  0.2 37544 18308 ??  Sp      7:45PM    0:00.11 nsd:
> server 1 (nsd)
> 
> root@name2:~ # egdb --pid=44937 /usr/sbin/nsd
> GNU gdb (GDB) 7.12.1
> Copyright (C) 2017 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-unknown-openbsd7.0".
> 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/sbin/nsd...(no debugging symbols found)...done.
> Attaching to program: /usr/sbin/nsd, process 44937
> Reading symbols from /usr/lib/libssl.so.50.0...done.
> Reading symbols from /usr/lib/libcrypto.so.47.0...done.
> Reading symbols from /usr/lib/libevent.so.4.1...done.
> Reading symbols from /usr/lib/libc.so.96.1...done.
> Reading symbols from /usr/libexec/ld.so...done.
> [Switching to thread 563101]
> kevent () at /tmp/-:3
> 3       /tmp/-: No such file or directory.
> 
> Anything I am missing?
> 
> Mischa
> 

Do you see a gdb prompt? If so

  continue

should it (and then wait for the crash).

If you still see the crashes, a tcpdump of the traffic to nsd might
helps as well, I can replay that locally against nsd. I would also
need your nsd config for that.

        -Otto

Reply via email to