Stuck CLOSED sockets / sshd / zombies...

John Baldwin jhb at freebsd.org
Tue Apr 8 13:37:43 UTC 2014


On Tuesday, April 08, 2014 5:04:24 am Karl Pielorz wrote:
> 
> --On 07 April 2014 11:48 -0400 John Baldwin <jhb at freebsd.org> wrote:
> 
> > Ok, do you have a matching /usr/src on the boxes in question?  If so,
> > please  do this:
> >
> > cd /usr/src/lib/libc
> > make DEBUG_FLAGS=-g all install
> 
> That just installs stuff, not rebuild it right? (Looks to have installed 
> non-stripped versions?).

Humm, it needs to build new ones with debug symbols.  If it doesn't, you'll
need to do 'make clean' before the other makes.  I think you should be
fine to do that (make clean then the command above) for those directories
and restart gdb without having to restart your sshd.  Please also
add '/usr/src/libexec/rtld-elf' to the list of directories where you do
this.  Then do 'detach' in gdb, exit gdb and restart it.

> > Then re-run the scan to get a stuck sshd.  Once that happens, please
> > attach to the top-most stock sshd (the one in "urdlck") with gdb
> > (gdb /usr/sbin/sshd <pid>) and run 'bt' and reply with the output.
> 
> Ok, that gives:
> 
> "
> (gdb) bt
> #0  0x00000008038ea89c in _umtx_op_err () from /lib/libthr.so.3
> #1  0x00000008038e104f in __thr_rwlock_rdlock () from /lib/libthr.so.3
> #2  0x00000008038e821c in _thr_rtld_init () from /lib/libthr.so.3
> #3  0x000000080064f9a2 in _rtld_get_stack_prot () from /libexec/ld-elf.so.1
> #4  0x00000008006498c9 in r_debug_state () from /libexec/ld-elf.so.1
> #5  0x00000008006470cd in .text () from /libexec/ld-elf.so.1
> #6  0x0000000000000246 in ?? ()
> #7  0x0000000000000000 in ?? ()

Hmmm, that is useful even though the debug symbols aren't there.  Please
do the rebuilds I asked for above and re-attach gdb and get 'bt' again.

-- 
John Baldwin


More information about the freebsd-hackers mailing list