libboost-python1.67.0: Installed: 1.67.0-13ubuntu1
libboost-iostreams1.67.0: Installed: 1.67.0-13ubuntu1
libboost-locale1.67.0: Installed: 1.67.0-13ubuntu1
libboost-filesystem1.67.0: Installed: 1.67.0-13ubuntu1
libboost-date-time1.67.0: Installed: 1.67.0-13ubuntu1
libboost-thread1.67.0: Installed: 1.67.0-13ubuntu1
libboost-system1.67.0: Installed: 1.67.0-13ubuntu1
}}}
I'm forced to pause some torrents as they keeps segfaulting deluge as it
starts recieving packets.
I've run it againts gdb and here is the stack :
{{{
Thread 2 "python3" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb4d15460 (LWP 26810)]
0xb4446f30 in ?? ()
(gdb) bt
#0 0xb4446f30 in ?? ()
#1 0xb582b848 in boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece
const*>::call<libtorrent::piece_picker const* const,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*> (this=0xb4d1481c,
this=0xb4d1481c, u=@0xb4d14824: 0xae288a88, b1=<synthetic pointer>:
<optimized out>,
b2=<synthetic pointer>: <optimized out>) at
/usr/include/boost/bind/mem_fn_template.hpp:342
#2 boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece
const*>::operator()<libtorrent::piece_picker const*> (
u=@0xb4d14824: 0xae288a88, a2=<optimized out>, a1=<optimized out>,
this=0xb4d1481c) at /usr/include/boost/bind/mem_fn_template.hpp:345
#3 boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> >::operator()<bool, boost::_mfi::cmf2<bool,
libtorrent::piece_picker, libtorrent::piece_picker::downloading_piece
const*, libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::rrlist2<libtorrent::piece_picker::downloading_piece const*&,
libtorrent::piece_picker::downloading_piece const*&> > (a=<synthetic
pointer>...,
f=..., this=0xb4d14824) at /usr/include/boost/bind/bind.hpp:388
#4 boost::_bi::bind_t<bool, boost::_mfi::cmf2<bool,
libtorrent::piece_picker, libtorrent::piece_picker::downloading_piece
const*, libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> >
>::operator()<libtorrent::piece_picker::downloading_piece const*&,
libtorrent::piece_picker::downloading_piece const*&> (a2=@0xb4d148b4:
0xb03e7030,
a1=<synthetic pointer>: <optimized out>, this=0xb4d1481c) at
/usr/include/boost/bind/bind.hpp:1318
#5 __gnu_cxx::__ops::_Val_comp_iter<boost::_bi::bind_t<bool,
boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> > >
>::operator()<libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const**> (__it=0xb4d148b4,
__val=<synthetic pointer>: <optimized out>, this=0xb4d1481c) at
/usr/include/c++/9/bits/predefined_ops.h:215
#6
std::__unguarded_linear_insert<libtorrent::piece_picker::downloading_piece
const**, __gnu_cxx::__ops::_Val_comp_iter<boost::_bi::bind_t<bool,
boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> > > > > (
__last=__last@entry=0xb4d148b8, __comp=...) at
/usr/include/c++/9/bits/stl_algo.h:1827
#7 0xb582b8e0 in
std::__insertion_sort<libtorrent::piece_picker::downloading_piece const**,
__gnu_cxx::__ops::_Iter_comp_iter<boost::_bi::bind_t<bool,
boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> > > > > (__first=0xb4d148b0,
__last=__last@entry=0xb4d148d0, __comp=...) at
/usr/include/c++/9/bits/move.h:99
#8 0xb582a8e6 in
std::__final_insertion_sort<libtorrent::piece_picker::downloading_piece
const**, __gnu_cxx::__ops::_Iter_comp_iter<boost::_bi::bind_t<bool,
boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> > > > > (__comp=...,
__last=0xb4d148d0, __first=<optimized out>) at
../../src/piece_picker.cpp:2169
#9 std::__sort<libtorrent::piece_picker::downloading_piece const**,
__gnu_cxx::__ops::_Iter_comp_iter<boost::_bi::bind_t<bool,
boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> > > > > (__comp=..., __last=0xb4d148d0,
__first=<optimized out>) at /usr/include/c++/9/bits/stl_algo.h:1970
#10 std::sort<libtorrent::piece_picker::downloading_piece const**,
boost::_bi::bind_t<bool, boost::_mfi::cmf2<bool, libtorrent::piece_picker,
libtorrent::piece_picker::downloading_piece const*,
libtorrent::piece_picker::downloading_piece const*>,
boost::_bi::list3<boost::_bi::value<libtorrent::piece_picker const*>,
boost::arg<1>, boost::arg<2> > > > (__comp=..., __last=0xb4d148d0,
__first=<optimized out>)
at /usr/include/c++/9/bits/stl_algo.h:4860
#11 libtorrent::piece_picker::pick_pieces (this=this@entry=0xae288a88,
pieces=..., interesting_blocks=std::vector of length 0, capacity 100,
num_blocks=num_blocks@entry=4, prefer_contiguous_blocks=<optimized out>,
prefer_contiguous_blocks@entry=0, peer=<optimized out>,
peer@entry=0xb446f250, options=<optimized out>, suggested_pieces=...,
num_peers=<optimized out>, num_peers@entry=29, pc=...)
at ../../src/piece_picker.cpp:2074
#12 0xb583358a in libtorrent::request_a_block (t=..., c=...) at
/usr/include/c++/9/bits/stl_vector.h:915
#13 0xb57fddec in libtorrent::peer_connection::incoming_unchoke
(this=this@entry=0xafc012b0) at ../../src/peer_connection.cpp:1646
#14 0xb577dffa in libtorrent::bt_peer_connection::on_unchoke
(this=0xafc012b0, received=<optimized out>) at
../../src/bt_peer_connection.cpp:971
#15 0xb5781288 in libtorrent::bt_peer_connection::dispatch_message
(received=1, this=0xafc012b0) at ../../src/bt_peer_connection.cpp:1965
#16 libtorrent::bt_peer_connection::dispatch_message (this=0xafc012b0,
received=1) at ../../src/bt_peer_connection.cpp:1916
#17 0xb5785778 in libtorrent::bt_peer_connection::on_receive_impl
(this=this@entry=0xafc012b0, bytes_transferred=<optimized out>) at
../../src/bt_peer_connection.cpp:3536
#18 0xb5786ea0 in libtorrent::bt_peer_connection::on_receive
(this=0xafc012b0, error=..., bytes_transferred=<optimized out>) at
../../src/bt_peer_connection.cpp:2634
#19 0xb5807038 in libtorrent::peer_connection::receive_data_impl
(this=this@entry=0xafc012b0, error=..., bytes_transferred=<optimized out>,
read_loops=0) at ../../src/peer_connection.cpp:6191
#20 0xb58073fa in libtorrent::peer_connection::on_receive_data_nb
(this=0xafc012b0, error=..., bytes_transferred=<optimized out>) at
../../src/peer_connection.cpp:6078
#21 0xb592e388 in boost::function2<void, boost::system::error_code const&,
unsigned int>::operator() (a1=<optimized out>, a0=..., this=0xb4d14d60) at
/usr/include/boost/function/function_template.hpp:682
#22 boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> >::operator()<boost::function2<void,
boost::system::error_code const&, unsigned int>, boost::_bi::list0> (
a=<synthetic pointer>..., f=..., this=0xb4d14d70) at
/usr/include/boost/bind/bind.hpp:319
#23 boost::_bi::bind_t<void, boost::function2<void,
boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> > >::operator() (
this=0xb4d14d60) at /usr/include/boost/bind/bind.hpp:1294
#24 boost::asio::asio_handler_invoke<boost::_bi::bind_t<void,
boost::function2<void, boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> > > > (function=...) at
/usr/include/boost/asio/handler_invoke_hook.hpp:69
#25 boost_asio_handler_invoke_helpers::invoke<boost::_bi::bind_t<void,
boost::function2<void, boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::--Type <RET> for more, q to quit, c to continue without
paging--
value<unsigned int> > >, boost::_bi::bind_t<void, boost::function2<void,
boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> > > > (context=..., function=...) at
/usr/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#26 boost::asio::detail::handler_work<boost::_bi::bind_t<void,
boost::function2<void, boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> > >,
boost::asio::system_executor>::complete<boost::_bi::bind_t<void,
boost::function2<void, boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> > > > (this=<synthetic pointer>,
handler=..., function=...) at
/usr/include/boost/asio/detail/handler_work.hpp:82
#27 boost::asio::detail::completion_handler<boost::_bi::bind_t<void,
boost::function2<void, boost::system::error_code const&, unsigned int>,
boost::_bi::list2<boost::_bi::value<boost::system::error_code>,
boost::_bi::value<unsigned int> > > >::do_complete (owner=0x56c6b8,
base=<optimized out>) at
/usr/include/boost/asio/detail/completion_handler.hpp:70
#28 0xb578f304 in boost::asio::detail::scheduler_operation::complete
(bytes_transferred=<optimized out>, ec=..., owner=0x56c6b8,
this=0xafc29e68) at
/usr/include/boost/asio/detail/scheduler_operation.hpp:40
#29 boost::asio::detail::scheduler::do_run_one (ec=..., this_thread=...,
lock=..., this=0x56c6b8) at
/usr/include/boost/asio/detail/impl/scheduler.ipp:401
#30 boost::asio::detail::scheduler::run (this=0x56c6b8, ec=...) at
/usr/include/boost/asio/detail/impl/scheduler.ipp:154
#31 0xb5842588 in boost::asio::io_context::run (this=0x6c3614) at
/usr/include/boost/asio/impl/io_context.ipp:62
#32 0xb579ac92 in
boost::asio::detail::boost_asio_detail_posix_thread_function
(arg=0x6c2338) at /usr/include/boost/asio/detail/impl/posix_thread.ipp:74
#33 0xb6e9ed3e in start_thread (arg=0x4ac76531) at pthread_create.c:479
#34 0xb6f5e17c in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:73 from
/lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
}}}
--
Ticket URL: <https://dev.deluge-torrent.org/ticket/3324>
Deluge <https://deluge-torrent.org/>
Deluge Project
Comment (by bro):
You should report this at the libtorrent issue tracker:
https://github.com/arvidn/libtorrent
--
Ticket URL: <https://dev.deluge-torrent.org/ticket/3324#comment:1>
--
Ticket URL: <https://dev.deluge-torrent.org/ticket/3324#comment:2>
Comment (by skuizy):
I've opened the issue there
[https://github.com/arvidn/libtorrent/issues/4094]
--
Ticket URL: <https://dev.deluge-torrent.org/ticket/3324#comment:3>
* component: Unknown => libtorrent
* milestone: needs verified => not applicable
--
Ticket URL: <https://dev.deluge-torrent.org/ticket/3324#comment:4>