Bug 525419
Summary: | transmission keep crash | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | biAji <biaji.cn> | ||||
Component: | transmission | Assignee: | Rahul Sundaram <sundaram> | ||||
Status: | CLOSED UPSTREAM | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | low | ||||||
Version: | 11 | CC: | charles, jspaleta, metherid, robatino, sanjay.ankur, smohan, sundaram | ||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | i686 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2010-01-11 22:15:50 UTC | Type: | --- | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Transmission stores its configuration information in ~/.config/transmission. Can you can move the folder and see if it fixes the problem? Yes, It's the only way to make it work again. That's weird. @@ Two questions: 1. Could you please update to the latest version, 1.75, and see if the crash persists? 2. Could you please attach a gdb backtrace to this ticket? If Fedora doesn't generate these automatically, the process is relatively simple: - make sure gdb and transmission-debuginfo is installed from yum - from the command line: $ gdb transmission - (gdb) handle SIGPIPE nostop noprint nopass - (gdb) r - ... wait for transmission to crash... - (gdb) thread apply all bt ^ and the output of that command is what you'll attach to this ticket Thanks! I tried to install transmission-1.75-1.fc12 RPM for i686, but it seemed it depend on other packages, which I can not find in rawhide repo. = =; And the gdb output as following: $ gdb transmission GNU gdb (GDB) Fedora (6.8.50.20090302-38.fc11) 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 "i586-redhat-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... (gdb) handle SIGPIPE nostop noprint nopass Signal Stop Print Pass to program Description SIGPIPE No No No Broken pipe (gdb) r Starting program: /usr/bin/transmission warning: .dynamic section for "/usr/lib/libXfixes.so.3" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations warning: .dynamic section for "/usr/lib/libXrandr.so.2" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations warning: .dynamic section for "/usr/lib/libXcursor.so.1" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations warning: .dynamic section for "/usr/lib/libXdamage.so.1" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations warning: .dynamic section for "/usr/lib/libpixman-1.so.0" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations [Thread debugging using libthread_db enabled] Missing separate debuginfo for /usr/lib/libtdb.so.1 Try: yum --enablerepo='*-debuginfo' install /usr/lib/debug/.build-id/85/b6149a8377a357541e89471eb7ee92474cc8de.debug warning: .dynamic section for "/usr/lib/libstdc++.so.6" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations warning: .dynamic section for "/lib/libgcc_s.so.1" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations [New Thread 0xb7b1fb70 (LWP 3202)] [New Thread 0xb6fffb70 (LWP 3203)] warning: .dynamic section for "/usr/lib/libgvfscommon.so.0" is not at the expected address warning: difference appears to be caused by prelink, adjusting expectations [New Thread 0xb456ab70 (LWP 3204)] Program received signal SIGSEGV, Segmentation fault. strlen () at ../sysdeps/i386/i486/strlen.S:69 69 ../sysdeps/i386/i486/strlen.S: 没有那个文件或目录. in ../sysdeps/i386/i486/strlen.S Current language: auto; currently asm > strlen () at ../sysdeps/i386/i486/strlen.S:69
Well, this is where it's crashing... but where is the output from "thread apply all bt"? :)
Sorry dude...It's here... hope it useful: (gdb) thread apply all bt Thread 3 (Thread 0xb4f97b70 (LWP 3544)): #0 0x007c4422 in __kernel_vsyscall () #1 0x00bf8fcb in read () from /lib/libpthread.so.0 #2 0x080a8abd in read (__buf=<value optimized out>, __nbytes=<value optimized out>, __fd=<value optimized out>) at /usr/include/bits/unistd.h:45 #3 verifyTorrent (__buf=<value optimized out>, __nbytes=<value optimized out>, __fd=<value optimized out>) at verify.c:92 #4 verifyThreadFunc (__buf=<value optimized out>, __nbytes=<value optimized out>, __fd=<value optimized out>) at verify.c:214 #5 0x00bf1935 in start_thread (arg=0xb4f97b70) at pthread_create.c:297 #6 0x00b5094e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 2 (Thread 0xb7b1fb70 (LWP 3543)): #0 0x007c4422 in __kernel_vsyscall () #1 0x00b46396 in *__GI___poll (fds=0xbdeff4, nfds=1, timeout=2000) at ../sysdeps/unix/sysv/linux/poll.c:87 #2 0x080cc0fd in ReceiveData (socket=25, data=0xb7b1eaac "M-SEARCH * HTTP/1.1\r\nHOST: 239.255.255.250:1900\r\nST: urn:schemas-upnp-org:device:InternetGatewayDevice:1\r\nMAN: \"ssdp:discover\"\r\nMX: 3\r\n\r\n", length=1536, timeout=2000) at miniupnpc.c:592 #3 0x080ccc7b in upnpDiscover (delay=2000, multicastif=0x0, minissdpdsock=0x0, sameport=0) at miniupnpc.c:453 #4 0x080c42aa in tr_upnpPulse (handle=0xb705f378, port=51413, isEnabled=1, doPortCheck=0) at upnp.c:92 #5 0x080bf9cf in natPulse (s=0xb7005c98, doPortCheck=<value optimized out>) at port-forwarding.c:82 #6 0x080bfc64 in onTimer (fd=-1, what=1, vshared=0xb7005c98) at port-forwarding.c:101 #7 0x03679220 in event_process_active (base=<value optimized out>) at event.c:370 #8 event_base_loop (base=<value optimized out>) at event.c:519 ---Type <return> to continue, or q <return> to quit--- #9 0x036793a9 in event_loop (flags=0) at event.c:446 #10 0x036793ce in event_dispatch () at event.c:384 #11 0x080a515d in libeventThreadFunc (veh=0x8165fb8) at trevent.c:239 #12 0x00bf1935 in start_thread (arg=0xb7b1fb70) at pthread_create.c:297 #13 0x00b5094e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 1 (Thread 0xb7fd8730 (LWP 3540)): #0 strlen () at ../sysdeps/i386/i486/strlen.S:69 #1 0x080a6163 in tr_buildPath (first_element=0x82799f0 "/home/biaji/Download") at utils.c:669 #2 0x0809d817 in tr_torrentGetMTimes (tor=0x82d8580, setme_n=0xbfffef3c) at torrent.c:1922 #3 0x080c1a5f in loadProgress (tor=<value optimized out>, dict=<value optimized out>) at resume.c:404 #4 loadFromFile (tor=<value optimized out>, dict=<value optimized out>) at resume.c:633 #5 tr_torrentLoadResume (tor=<value optimized out>, dict=<value optimized out>) at resume.c:710 #6 0x0809fcba in torrentRealInit (ctor=<value optimized out>, tor=<value optimized out>) at torrent.c:614 #7 tr_torrentNew (ctor=<value optimized out>, tor=<value optimized out>) at torrent.c:722 #8 0x080974f1 in tr_sessionLoadTorrents (session=0x81654e8, ctor=0x826c4d8, setmeCount=0xbffff1dc) at session.c:1543 #9 0x08076c7a in tr_core_load (self=0x8124058, forcePaused=0) at tr-core.c:830 #10 0x0806be9a in appsetup (isIconified=<value optimized out>, forcepause=<value optimized out>, cbdata=<value optimized out>, torrentFiles=<value optimized out>, wind=<value optimized out>) at main.c:520 #11 main (isIconified=<value optimized out>, forcepause=<value optimized out>, cbdata=<value optimized out>, torrentFiles=<value optimized out>, wind=<value optimized out>) at main.c:462 Thanks biAji. I see now what's happening, but still can't figure out why... :/ How many files are in ~/.config/transmission/torrents/ ? If it's a small number, would you be willing to tar them up and mail them to me privately at charles-at-transmissionbt.com? Some details regarding that last comment: what's happening is that it's loading torrents from ~/.config/transmission/torrents/ on startup, and it tries get the mtimes of each of the files owned by that torrent. It's crashing when building a filename to stat(2) its mtime, because of an invalid pointer being passed into tr_buildPath(). biAji: alternative path if you want to keep your .torrents private: try running valgrind on Transission instead: $ export G_SLICE=always-malloc $ export G_DEBUG=gc-friendly $ export GLIBCXX_FORCE_NEW=1 $ valgrind --tool=memcheck --leak-check=full --leak-resolution=high --num-callers=64 --log-file=x-valgrind --show-reachable=yes ./transmission Sorry guys, I am not often use this utilities and give up the certain torrent for a long time. Yes the problem is torrent based, and I will dig out those torrents for test in a short time. And more, I can only delete the resume directory to correct the problem it caused. |
Created attachment 362470 [details] dump file generate by transmission Description of problem: After a crash when I close the app, I can not start it again. It keep crash everytime I start it. Version-Release number of selected component (if applicable): Transmission 1.72 (8714) How reproducible: Not sure. Steps to Reproduce: 1. 2. 3. Actual results: Can not start the app. And there are no error report if I start it in terminal. Expected results: Act as normal Additional info: