Deluge freezes with libtorrent_aio

Suggestions and discussion of future versions
Post Reply
方向音痴
New User
New User
Posts: 9
Joined: Tue Mar 02, 2010 10:13 pm

Deluge freezes with libtorrent_aio

Post by 方向音痴 »

I am trying to use the Asynchronous I/O branch of libtorrent with deluge:

https://libtorrent.svn.sourceforge.net/ ... rrent_aio/

I want to use this version in order to take advantage of multiple spindles in a large raid array to increase throughput by having multiple reads I/O's being done in parallel. I compiled libtorrent_aio but as soon as I load a torrent from deluge it freezes.

I am using the newest version from git but the most recent stable also had the same issue.

The process has to be killed with signal 6 or 9 as a normal SIGTERM will not cause it to die. When stracing the process I get:

Code: Select all

readlink("/usr/share/icons/Tango/22x22/actions/gtk-add.png", "list-add.png", 256) = 12
write(10, "\224\6\7\0\31\4\300\2\0\0\0\0\0\0\0\0W\0\"\0007\1,\1U\0"..., 464) = 464
ioctl(10, FIONREAD, [0])                = 0
poll([{fd=7, events=POLLIN}, {fd=5, events=POLLIN}, {fd=10, events=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=12, events=0}, {fd=12, events=0}, {fd=18, events=POLLIN}], 9, 11) = 0
ioctl(10, FIONREAD, [0])                = 0
poll([{fd=7, events=POLLIN}, {fd=5, events=POLLIN}, {fd=10, events=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=12, events=0}, {fd=12, events=0}, {fd=18, events=POLLIN}], 9, 37) = 0
ioctl(10, FIONREAD, [0])                = 0
poll([{fd=7, events=POLLIN}, {fd=5, events=POLLIN}, {fd=10, events=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=12, events=0}, {fd=12, events=0}, {fd=18, events=POLLIN}], 9, 48) = 0
ioctl(10, FIONREAD, [0])                = 0
poll([{fd=7, events=POLLIN}, {fd=5, events=POLLIN}, {fd=10, events=POLLIN, revents=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=12, events=0}, {fd=12, events=0}, {fd=18, events=POLLIN}], 9, 48) = 1
ioctl(10, FIONREAD, [32])               = 0
read(10, "\5\1\377!\212\266\343Q6\0\0\0w\1\300\2\0\0\0\0\35\4\317"..., 32) = 32
write(10, "$\6\1\0&\4\2\0006\0\0\0", 12) = 12
read(10, "\1\1\1\"\0\0\0\0006\0\0\0\350\3\340\0\35\4\317\2\35\4\317"..., 32) = 32
write(10, "&\6\2\0\350\3\340\0", 8)     = 8
read(10, "\1\1\2\"\0\0\0\0006\0\0\0\351\3\340\0\35\4\317\2\223\1"..., 32) = 32
write(10, "&\6\2\0\351\3\340\0", 8)     = 8
read(10, "\1\1\3\"\0\0\0\0006\0\0\0w\1\300\2\35\4\317\2\220\1\273"..., 32) = 32
write(10, "&\6\2\0w\1\300\2", 8)        = 8
read(10, "\1\1\4\"\0\0\0\0006\0\0\0\0\0\0\0\35\4\317\2\220\1\273"..., 32) = 32
write(10, "%\6\1\0", 4)                 = 4
brk(0x1a3e000)                          = 0x1a3e000
write(15, "\0", 1)                      = 1
futex(0x1830228, 0x81 /* FUTEX_??? */, 1) = 1
futex(0x188b334, 0x80 /* FUTEX_??? */, 287
Does deluge require some modifications to work with this branch of libtorrent?
Cas
Top Bloke
Top Bloke
Posts: 3681
Joined: Mon Dec 07, 2009 6:04 am
Location: Scotland

Re: Deluge freezes with libtorrent_aio

Post by Cas »

I asked arvid who develops lt and he pointed me to this conversation:

http://permalink.gmane.org/gmane.networ ... rrent/3594

and also to a potential signal handler problem with python and libtorrent

http://bugs.python.org/issue5315
方向音痴
New User
New User
Posts: 9
Joined: Tue Mar 02, 2010 10:13 pm

Re: Deluge freezes with libtorrent_aio

Post by 方向音痴 »

Yea that is my thread. Unfortunately doing stack traces is totally broken with my python and I have had trouble troubleshooting this on my own which is why I messaged you =(
Post Reply