Opened 11 years ago

Closed 11 years ago

#3786 closed Bug (invalid)

crash in tr_webThreadFunc()

Reported by: RedShift Owned by:
Priority: Normal Milestone: None Set
Component: Transmission Version: 2.12
Severity: Normal Keywords: needinfo
Cc: RedShift

Description

Hello

Transmission has been crashing for me with a segfault, quite a lot. It appears at random times, even when doing nothing.

OS: CentOS 5.4 i386 Transmission version: 2.12 (though this has been happening for me since I started using transmission, that was version 2.04)

Attached is

1) The specfile I used to build transmission 2) The package list installed on the machine

Coredump: http://users.webmind.be/~glenn/core.27604 (78 MB)

Attachments (2)

transmission.spec (1.9 KB) - added by RedShift 11 years ago.
Specfile
pkglist.txt (4.8 KB) - added by RedShift 11 years ago.
Package list of installed packages

Download all attachments as: .zip

Change History (21)

Changed 11 years ago by RedShift

Specfile

Changed 11 years ago by RedShift

Package list of installed packages

comment:1 Changed 11 years ago by RedShift

Command line used to start transmission-daemon:

/usr/bin/transmission-daemon -w /vol/transmission/download -u 50 -a 192.168.0.*,127.0.0.1 -l 9999 -L 99999 -m -P 51473

comment:2 Changed 11 years ago by charles

Hi RedShift?,

Could you use gdb to pull a backtrace out of that corefile?

% gdb transmission-daemon core.27604
(gdb) thread apply all backtrace
..
(gdb) quit

comment:3 Changed 11 years ago by RedShift

[root@xxx transmission]# gdb /usr/bin/transmission-daemon core.27604
GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-23.el5_5.2)
Copyright (C) 2009 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 "i386-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/transmission-daemon...(no debugging symbols found)...done.

warning: core file may not match specified executable file.
[New Thread 27605]
[New Thread 27604]
Reading symbols from /lib/librt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /usr/lib/libcurl.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libcurl.so.3
Reading symbols from /usr/lib/libgssapi_krb5.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libgssapi_krb5.so.2
Reading symbols from /usr/lib/libkrb5.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libkrb5.so.3
Reading symbols from /usr/lib/libk5crypto.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libk5crypto.so.3
Reading symbols from /lib/libcom_err.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libcom_err.so.2
Reading symbols from /usr/lib/libidn.so.11...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libidn.so.11
Reading symbols from /lib/libssl.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libssl.so.6
Reading symbols from /lib/libcrypto.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libcrypto.so.6
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /usr/lib/libz.so.1...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /usr/lib/libevent-1.4.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libevent-1.4.so.2
Reading symbols from /lib/libm.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libpthread.so.0...(no debugging symbols found)...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/lib/libkrb5support.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libkrb5support.so.0
Reading symbols from /lib/libkeyutils.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libkeyutils.so.1
Reading symbols from /lib/libresolv.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libnsl.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libselinux.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libselinux.so.1
Reading symbols from /lib/libsepol.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libsepol.so.1
Reading symbols from /lib/libnss_files.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /lib/libnss_dns.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libnss_dns.so.2
Core was generated by `transmission-daemon -w /vol/transmission/download -u 50 -a 192.168.0.*,127.0.0.'.
Program terminated with signal 11, Segmentation fault.
#0  0x0806810c in tr_webThreadFunc ()
(gdb) thread apply all backtrace

Thread 3 (Thread 27604):
#0  0x009bd402 in __kernel_vsyscall ()
#1  0x008f62f6 in nanosleep () from /lib/libpthread.so.0
#2  0x08065144 in tr_wait_msec ()
#3  0x0804be02 in main ()

Thread 2 (Thread 27605):
#0  0x009bd402 in __kernel_vsyscall ()
#1  0x002d95e6 in epoll_wait () from /lib/libc.so.6
#2  0x001d615a in ?? () from /usr/lib/libevent-1.4.so.2
#3  0x001c80bf in event_base_loop () from /usr/lib/libevent-1.4.so.2
#4  0x001c84a9 in event_loop () from /usr/lib/libevent-1.4.so.2
#5  0x001c84ce in event_dispatch () from /usr/lib/libevent-1.4.so.2
#6  0x08064559 in libeventThreadFunc ()
#7  0x080551c2 in ThreadFunc ()
#8  0x008ee832 in start_thread () from /lib/libpthread.so.0
#9  0x002d8f6e in clone () from /lib/libc.so.6

Thread 1 (Thread 27606):
#0  0x0806810c in tr_webThreadFunc ()
#1  0x00000080 in ?? ()
#2  0x00400000 in ?? ()
#3  0x00000000 in ?? ()
(gdb)

comment:4 Changed 11 years ago by charles

What's the version number of the copy of libcurl you've got installed?

comment:5 Changed 11 years ago by livings124

This appears to be the same as #3544

comment:6 Changed 11 years ago by charles

#3544 appears to have other problems, so let's leave this ticket open and separate.

Here's some useful information from #3544 though:

#0  0x080678c0 in tr_webThreadFunc (vsession=0x80bfbd8) at web.c:267
        msec = 0
        msg = (CURLMsg *) 0x0
        mcode = CURLM_BAD_HANDLE
        task = (struct tr_web_task *) 0x0
        unused = 0
        multi = (CURLM *) 0x0
        web = (struct tr_web *) 0x0
        taskCount = 0
        session = (tr_session *) 0x80bfbd8

comment:7 Changed 11 years ago by RedShift

[root@xxx ~]# rpm -qa|grep -i curl
curl-7.15.5-9.el5

[root@xxx ~]# rpm -q --filesbypkg curl
curl                      /usr/bin/curl
curl                      /usr/lib/libcurl.so.3
curl                      /usr/lib/libcurl.so.3.0.0

[root@xxx ~]# curl -V
curl 7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
Protocols: tftp ftp telnet dict ldap http file https ftps
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz

comment:8 Changed 11 years ago by RedShift

  • Cc RedShift added

comment:9 Changed 11 years ago by charles

7.15.5 over four years old now, they're on 7.21.2 now. Is there no newer version available in the centos repos? I strongly suspect upgrading curl libcurl would resolve this error.

comment:10 Changed 11 years ago by starmoon

I have this problem too. random dead (but about in 20-24hr)

I'm using centos 5.5 and curl version is 7.15.5 too.

comment:11 Changed 11 years ago by RedShift

Ok I have two systems running the same platform, the only difference being one i386 and one x86_64. I thought that was were the fault was, but I started analyzing more closely what else could be different. The box running i386 had IPv6 connectivity using Sixxs which the x86_64 box didn't have. When I disabled the sixxs tunnel (making it impossible for the computer - and thus transmission - to communicate via IPv6) transmission stopped segfaulting.

@Starmoon: do you have IPv6 internet connectivity to your box as well?

comment:12 Changed 11 years ago by starmoon

to: RedShift? No, I don't have ipv6 configed.

comment:13 Changed 11 years ago by Programmer

I have this problem too in 6 machines (12 transmission-daemon`s) Problem occured when I set "open-file-limit" to more then 1024 (I try to set 2000,5000,10000). Limits for user is 10000 files Each transmission-daemon have many torrents (up to 3000). So, if I set open-file-limit to 1024, torrents closes with "Too many open files" error. When I increase open-file-limit, Transmission crashes. In /var/log/messages: transmission-da[14669]: segfault at 5 ip b76c16e8 sp b68ba140 error 4 in libcurl.so.4.2.0[b7689000+56000]

curl-7.21.2 debian 5, Generic kernel 2.6.26-2-686-bigmem Transmission from repository - 2.12+ (11489)

comment:14 Changed 11 years ago by RedShift

I was too optimistic, transmission crashed again a few times this weekend without IPv6. Going to try the open-file-limit trick next.

comment:15 Changed 11 years ago by RedShift

Setting open-file-limit to 1024 didn't help either.

comment:16 Changed 11 years ago by charles

...so, no answer to my libcurl question? :)

As I said, I strongly suspect that upgrading libcurl will fix this problem. I would much rather hear about testing in that direction than on ipv6 or open-file-limit, which are probably red herrings.

Last edited 11 years ago by charles (previous) (diff)

comment:17 Changed 11 years ago by charles

  • Summary changed from Transmission crashes with a segfault at random times to crash in tr_webThreadFunc()

comment:18 Changed 11 years ago by jordan

We'd like to figure out what's causing this bug for you, but we haven't heard back from you in a while. Could you please provide the requested information? Thanks!

comment:19 Changed 11 years ago by jordan

  • Keywords needinfo added
  • Resolution set to invalid
  • Status changed from new to closed

We are closing this bug report because it lacks the information we need to investigate the problem, as described in the previous comments. Please reopen it if you can give us the missing information, and don't hesitate to submit bug reports in the future. Thanks again!

Note: See TracTickets for help on using tickets.