cracauer@
Developer
Awesome. Feel free to update the GitHub issue if you have the time https://github.com/rakshasa/rtorrent/issues/1285
Well, that one is about the SIGILL and closed. A new one might be in order.
Awesome. Feel free to update the GitHub issue if you have the time https://github.com/rakshasa/rtorrent/issues/1285
davorb Patch is on GitHub https://github.com/rakshasa/rtorrent/commit/eacf9798e2787df7dd4d5c800a46bac7931ac41cIdk if it's because I'm a new member; but I can't find/see the patch file.
(gdb) bt
#0 _sendto () at _sendto.S:4
#1 0x0000000826e55a4d in __thr_sendto (s=40, m=0x2c15f6b45ba0, l=10, f=0,
t=0x0, tl=0) at /xcarb3/usr/src/lib/libthr/thread/thr_syscalls.c:529
#2 0x000000082429e3e7 in torrent::SocketStream::write_stream (
this=<optimized out>, buf=0x2c15f6b45ba0, length=<optimized out>)
at ./socket_stream.h:94
#3 torrent::SocketStream::write_stream_throws (this=<optimized out>,
buf=0x2c15f6b45ba0, length=<optimized out>) at socket_stream.cc:80
#4 0x00000008242af30c in torrent::PeerConnectionMetadata::event_write (
this=0x2c15f3120600) at peer_connection_metadata.cc:353
#5 0x000000082423ad3e in torrent::PollKQueue::perform (
this=this@entry=0x2c15ef65b190) at poll_kqueue.cc:252
#6 0x000000082423aeb9 in torrent::PollKQueue::do_poll (this=0x2c15ef65b190,
timeout_usec=<optimized out>, flags=<optimized out>) at poll_kqueue.cc:285
#7 0x0000000824271342 in torrent::thread_base::event_loop (
thread=0x2c15ef6c5080) at thread_base.cc:174
#8 0x00000000002808ed in ?? ()
#9 0x000000082ab5fbea in __libc_start1 (argc=26, argv=0x82066e5d8,
env=0x82066e6b0, cleanup=<optimized out>, mainX=0x27f650)
at /xcarb3/usr/src/lib/libc/csu/libc_start1.c:157
#10 0x000000000027e6a0 in ?? ()
(gdb) l
89 inline int
90 SocketStream::write_stream(const void* buf, uint32_t length) {
91 if (length == 0)
92 throw internal_error("Tried to write to buffer length 0.");
93
94 return ::send(m_fileDesc, buf, length, 0);
95 }
96
97 }
98
(gdb) p m_fileDesc,
A syntax error in expression, near `'.
(gdb) p m_fileDesc
value has been optimized out
releng/14.1-n267679-10e31f0946d8
) with applied forementioned patch and versions:libtorrent-0.13.8
rtorrent-0.9.8
Idk if it makes a difference, but I have 12 terabytes of data controlled by rtorrent and crashes after a few minutes.This thread piqued my interest. I was not able to replicate it on 14.1 (releng/14.1-n267679-10e31f0946d8
) with applied forementioned patch and versions:
Code:libtorrent-0.13.8 rtorrent-0.9.8
In paralel machine was downloading and seeding something small, leeching something slow and something fast (4GB download averaging at 80MBps). Client is running for a day or so.
Idk if it makes a difference, but I have 12 terabytes of data controlled by rtorrent and crashes after a few minutes.
That I'm unable to test.Idk if it makes a difference, but I have 12 terabytes of data controlled by rtorrent and crashes after a few minutes.
? 12 TB??? All of my torrent-related data barely adds up to just over 2TB, but I guess that depends on what kind of data it is. My biggest torrent ever was just over 90GB, most are like 4-8 GB, but I'm happy with what I got. Yeah, when you have that much data controlled by torrents, the OS will start bursting at seams. ? ?Idk if it makes a difference, but I have 12 terabytes of data controlled by rtorrent and crashes after a few minutes.
? 12 TB??? All of my torrent-related data barely adds up to just over 2TB, but I guess that depends on what kind of data it is. My biggest torrent ever was just over 90GB, most are like 4-8 GB, but I'm happy with what I got. Yeah, when you have that much data controlled by torrents, the OS will start bursting at seams. ? ?
After one day, it seems stable.
Unless the signal is handled elsewhere, the:
Code:return ::send(m_fileDesc, buf, length, 0);
Should probably be:
Code:return ::send(m_fileDesc, buf, length, MSG_NOSIGNAL);
What FreeBSD version are you on?
root@matrix:~ # uname -a
FreeBSD matrix 14.1-RELEASE-p3 FreeBSD 14.1-RELEASE-p3 GENERIC amd64
Hmm, good point. The manpage says:I still wonder whether the signal is legitimate, aka does something die in there that shouldn't die on 14?
MSG_NOSIGNAL is used to request not to send the SIGPIPE signal if an attempt to send is made on a socket that is shut down for writing or no longer connected
I've a hunch ( based only on my gut ) that maybe rebulding librtorrent helped. FYI I was not able to trigger the crash during my tests.Everything works fine for me, after having rebuilt all of the packages and with the patch.