On 05/09/15 09:21, Matthias Urlichs wrote: > Johan Ström <johan <at> stromnet.se> writes: > >> What does debug logging reveal? Configure & build with "--enable-debug >> --enable-owtraffic" and then running with "--foreground --debug" usually >> gives a very verbose idea on what's going on. > Nope on both counts: > # /usr/bin/owserver -c /etc/owfs.conf --nozero --foreground --debug > DEBUG MODE > libow version: > 3.1p0 > Segmentation fault > #
Ok, very early crash then. Does it help buidling with --disable-zero? > >> Is the stacktrace always ending up in libusb? Could possibly indicate >> duplicate libusb_close calls or something related to libusb, which had a >> few changes lately. >> > The stack trace ends with not finding libdns_sd, and then ..: > > [pid 10178] open("/usr/lib/libdns_sd.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No > such file or directory) > [pid 10178] stat64("/usr/lib", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = > 0 > [pid 10178] munmap(0xb5c45000, 51127) = 0 > [pid 10178] recvmsg(3, <unfinished ...> > [pid 10180] read(11, <unfinished ...> > [pid 10178] <... recvmsg resumed> 0xbed20844, 0) = -1 EAGAIN (Resource > temporarily unavailable) > [pid 10178] open("/dev/bus/usb/001/005", O_RDWR) = 12 > [pid 10178] ioctl(12, SNDRV_CTL_IOCTL_TLV_READ or USBDEVFS_GET_CAPABILITIES, > 0xb6f000) = 0 > [pid 10178] write(7, "\1", 1) = 1 > [pid 10178] read(6, "\1", 1) = 1 > [pid 10178] ioctl(12, USBDEVFS_GETDRIVER, 0xbed227f8) = 0 > [pid 10178] ioctl(12, USBDEVFS_SETCONFIGURATION <unfinished ...> > Process 10179 attached > [pid 10179] set_robust_list(0xb6c514d0, 12) = 0 > [pid 10179] poll([{fd=4, events=POLLIN}, {fd=3, events=POLLIN}], 2, -1 > <unfinished ...> > [pid 10178] <... ioctl resumed> , 0xbed22904) = -1 EBUSY (Device or resource > busy) > [pid 10178] write(7, "\1", 1) = 1 > [pid 10178] read(6, "\1", 1) = 1 > [pid 10178] close(12) = 0 > [pid 10178] ioctl(12, SNDRV_CTL_IOCTL_ELEM_READ or USBDEVFS_IOCTL, > 0xbed2299c) = -1 EBADF (Bad file descriptor) > [pid 10178] write(7, "\1", 1) = 1 > [pid 10178] read(6, "\1", 1) = 1 > [pid 10178] --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} -- > - > [pid 10179] +++ killed by SIGSEGV +++ > [pid 10180] +++ killed by SIGSEGV +++ > +++ killed by SIGSEGV +++ > Segmentation fault > > … which looks like it's a different fault point than the backtrace I've > posted in my last message, as this has three threads instead of two. Do you have the gdb output from this as well? The above looks more like a syscall trace. "thread apply all backtrace" is a useful gdb cmd to dump backtrace of all running threads. Johan > > -- Matthias Urlichs > > ------------------------------------------------------------------------------ > _______________________________________________ > Owfs-developers mailing list > Owfs-developers@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/owfs-developers ------------------------------------------------------------------------------ _______________________________________________ Owfs-developers mailing list Owfs-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/owfs-developers