Opened 9 years ago

Closed 9 years ago

#4935 closed Bug (duplicate)

crash during seeding

Reported by: matusz Owned by:
Priority: Normal Milestone: None Set
Component: Transmission Version: 2.52
Severity: Normal Keywords: needinfo


Transmission crashes after a few minutes after uploading to a specific host.

Temporary breakpoint 1 at 0x8067940: file, line 475.
Starting program: /usr/local/bin/transmission-qt 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/".

Temporary breakpoint 1, main (argc=1, argv=0xbfffeff4) at
475	    QStringList addme;
(gdb) continue
[New Thread 0xb420bb40 (LWP 32720)]
[New Thread 0xb38ffb40 (LWP 32721)]
[New Thread 0xb30ffb40 (LWP 32722)]
[New Thread 0xafafeb40 (LWP 32724)]
[New Thread 0xaf2feb40 (LWP 32725)]
[New Thread 0xaeafeb40 (LWP 32726)]
[New Thread 0xae2feb40 (LWP 32727)]
[New Thread 0xadafeb40 (LWP 32728)]
[Thread 0xadafeb40 (LWP 32728) exited]
[Thread 0xaeafeb40 (LWP 32726) exited]
[Thread 0xae2feb40 (LWP 32727) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb420bb40 (LWP 32720)]
0x0811ca01 in UTPSocket::selective_ack (this=0x76c2, base=30401, mask=
    0x76c0 <Address 0x76c0 out of bounds>, len=8 '\b') at utp.cpp:1538
1538			bool bit_set = bits >= 0 && mask[bits>>3] & (1 << (bits & 7));
(gdb) bt
#0  0x0811ca01 in UTPSocket::selective_ack (this=0x681f, base=26654, mask=
    0x681d <Address 0x681d out of bounds>, len=8 '\b') at utp.cpp:1538
#1  0x00006820 in ?? ()
#2  0x0000681f in ?? ()
#3  0x0000681e in ?? ()
#4  0x0000681d in ?? ()
#5  0x00000008 in ?? ()
#6  0x00000000 in ?? ()

/var/log/messages: transmission-qt[32321]: segfault at 8893 ip 0811ca01 sp b392de70 error 4 in transmission-qt[8048000+139000]

client: BitTornado? 18.33.0 Status: TUKI (I'm seeding a partially downloaded torrent).

Change History (14)

comment:1 Changed 9 years ago by x190

matusz: What revision number are you using?

comment:2 Changed 9 years ago by matusz


comment:3 Changed 9 years ago by cfpp2p

Here I seed partially downloaded torrent with transmission-qt v2.52 r13304

uTP is enabled for transmission but BitTornado? in my test environment does not include uTP and as far as I know the uTP bittorrent extension should not be for BitTornado? so I do not understand the T flag.

I could not reproduce any crash and transmission finished uploading completely what data it had for the test torrent.

matusz -- are you getting this crash consistently? is there any other information you see that might be relevant?

comment:4 Changed 9 years ago by matusz

It crashed again and again after a few minutes of uploading. I have peer's IP address if it's relevant. Have you tested on a LAN?

comment:5 Changed 9 years ago by cfpp2p

I have tested on LAN and WAN. Are there any additional crash reports? Does the crash only happen with BitTornado? clients connected or other clients as well?

comment:6 Changed 9 years ago by matusz

It happened only with that particular peer running BitTornado? (exact reported version: 18.33.0), I don't know if it happens with other peers running that client yet. No additional crash reports, sorry.

comment:7 Changed 9 years ago by matusz

It just happened again on the same tracker but on different torrent and IP (I don't know if it's the same user):

comment:8 Changed 9 years ago by rb07

The stack trace after frame 0 is completely corrupted, my guess is that you build the application with a defective compiler.

I've had a lot of trouble with the 4.6.x series of gcc (I reverted to 4.5.3, haven't tested 4.7.0 since the .0 means beta in gcc speak). One way to test that is building with no optimization at all (-O0); and I mean re-building all of transmission and included 3rd party, not the rest (libcurl, libevent, dbus, Qt), with the current compiler.

Changing gcc versions means re-building everything, they are not compatible (the 4.6 series introduced stack protection).

comment:9 Changed 9 years ago by jordan

Is this crash repeatable? If so, what steps do I need to follow to reproduce the error?

comment:10 Changed 9 years ago by jordan

  • Keywords needinfo added
  • Priority changed from High to Normal
  • Severity changed from Major to Normal

Any news on how to reproduce this crash, or on getting a non-corrupt crash report?

comment:11 Changed 9 years ago by matusz

You simply have to seed a torrent to make this crash happen. I haven't been using torrent lately so sorry for the lack of new information. I'm going to upgrade my system soon (gcc4.7.0->4.7.1) and check if the crash still appears but it can take a long time since it appeared pretty rarely but when it did, Transmission crashed every time after a few minutes after I started it and connected to the peer which was leeching torrent I was seeding.

comment:12 Changed 9 years ago by jordan

I'm seeding several torrents and am not experiencing this crash. :/

comment:13 Changed 9 years ago by matusz

It happened when remote client used BitTornado? 18.33.0.

comment:14 Changed 9 years ago by jordan

  • Resolution set to duplicate
  • Status changed from new to closed

Closing as a dupe of #5002

Note: See TracTickets for help on using tickets.