deluged SEGV in torrent_plugin subtype_dealloc

Bug #1052723 reported by Chad Miller
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libtorrent-rasterbar (Ubuntu)
New
Undecided
Unassigned

Bug Description

deluged runs without error, but once deluge-gtk or deluge-console is connected, deluged SEGVs.

$ dpkg -l deluge python-libtorrent libboost-python1.49.0 libboost-system1.49.0 libstdc++6 libtorrent-rasterbar6 |cat
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-===========================================================-==========================================================-============-===============================================================================
ii deluge 1.3.5-1ubuntu2 all bittorrent client written in Python/PyGTK
ii libboost-python1.49.0 1.49.0-3.1ubuntu1 i386 Boost.Python Library
ii libboost-system1.49.0 1.49.0-3.1ubuntu1 i386 Operating system (e.g. diagnostics support) library
ii libstdc++6:i386 4.7.1-9ubuntu2 i386 GNU Standard C++ Library v3
ii libtorrent-rasterbar6 0.16.2-0ubuntu1 i386 C++ bittorrent library by Rasterbar Software
ii python-libtorrent 0.16.2-0ubuntu1 i386 Python bindings for libtorrent-rasterbar

$ gdb python
GNU gdb (GDB) 7.5-ubuntu
Copyright (C) 2012 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 "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/python...Reading symbols from /usr/lib/debug/usr/bin/python2.7...done.
done.
(gdb) set args /usr/bin/deluged -d
(gdb) r
Starting program: /usr/bin/python /usr/bin/deluged -d
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb717db40 (LWP 6397)]
[New Thread 0xb67ffb40 (LWP 6398)]
[New Thread 0xb5dffb40 (LWP 6399)]
[New Thread 0xb4f28b40 (LWP 6400)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb67ffb40 (LWP 6398)]
subtype_dealloc (self=<torrent_plugin at remote 0x8a0f374>) at ../Objects/typeobject.c:951
951 ../Objects/typeobject.c: No such file or directory.
(gdb) bt full
#0 subtype_dealloc (self=<torrent_plugin at remote 0x8a0f374>) at ../Objects/typeobject.c:951
        type = 0x87c283c
        base = <optimized out>
        basedealloc = <optimized out>
        tstate = 0x0
#1 0xb72f883c in boost::python::converter::shared_ptr_deleter::operator()(void const*) ()
   from /usr/lib/libboost_python-py27.so.1.49.0
No symbol table info available.
#2 0xb76c5705 in ?? () from /usr/lib/python2.7/dist-packages/libtorrent.so
No symbol table info available.
#3 0xb754dd6b in std::_List_base<boost::shared_ptr<libtorrent::torrent_plugin>, std::allocator<boost::shared_ptr<libtorrent::torrent_plugin> > >::_M_clear() () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#4 0xb7534571 in libtorrent::torrent::~torrent() () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#5 0xb7534a02 in libtorrent::torrent::~torrent() () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#6 0xb74ec5e6 in ?? () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#7 0xb751b298 in libtorrent::piece_manager::~piece_manager() () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#8 0xb7400d46 in ?? () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#9 0xb7401318 in std::_List_base<std::pair<libtorrent::disk_io_job, int>, std::allocator<std::pair<libtorrent::disk_io_job, int> > >::_M_clear() () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#10 0xb74013e9 in ?? () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#11 0xb73e8168 in ?? () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#12 0xb73f6147 in libtorrent::completion_queue_handler(std::list<std::pair<libtorrent::disk_io_job, int>, std::allocator<std::pair<libtorrent::disk_io_job, int> > >*) () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#13 0xb7402c89 in ?? () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#14 0xb73d1ff7 in boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service::thread_info&, boost::asio::detail::op_queue<boost::asio::detail::task_io_service_operation>&, boost::system::error_code const&) () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#15 0xb73d4f1c in boost::asio::detail::task_io_service::run(boost::system::error_code&) ()
   from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#16 0xb73d5036 in boost::asio::io_service::run(boost::system::error_code&) () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#17 0xb74eb2e5 in libtorrent::aux::session_impl::main_thread() () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#18 0xb74eccd1 in ?? () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#19 0xb73c78c6 in boost_asio_detail_posix_thread_function () from /usr/lib/libtorrent-rasterbar.so.6
No symbol table info available.
#20 0xb7f9fd4c in start_thread (arg=0xb67ffb40) at pthread_create.c:308
        __res = <optimized out>
        pd = 0xb67ffb40
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1208283136, 0, 4001536, -1233128344, -395994912, -461856541},
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
        __PRETTY_FUNCTION__ = "start_thread"
#21 0xb7ebb8ae in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Chad Miller (cmiller)
affects: deluge (Ubuntu) → libtorrent-rasterbar (Ubuntu)
description: updated
Revision history for this message
Cas (calumlind) wrote :

This is likely related to the bug in #1049332 so do you mind testing the latest libtorrent changes:

http://libtorrent.svn.sourceforge.net/viewvc/libtorrent/branches/RC_0_16/

Revision history for this message
Chad Miller (cmiller) wrote :

0.16 RC seems to work.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.