aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Author Topic: 10742-asio crash  (Read 6174 times)

stoatwblr

  • Sr. Member
  • ****
  • Karma: 12
  • Offline Offline
  • Posts: 318
10742-asio crash
« on: February 12, 2012, 08:24:45 PM »


Crash occurred after killing amulegui on another machine (it had wedged)

----------------------------=| BACKTRACE FOLLOWS: |=----------------------------
Current version is: aMuleD SVN compiled with wxGTK2 v2.8.12 and Boost 1.48 (Debugging) (Snapshot: rev. 10742)
Running on: Linux 3.2.0-15-generic x86_64

[2] wxFatalSignalHandler in /usr/lib/libwx_baseu-2.8.so.0[0x2b799493819c]
[3] CFileAreaSigHandler::Handler(int, siginfo*, void*) in FileArea.cpp:131
[4] ?? in /lib/x86_64-linux-gnu/libpthread.so.0[0x2b7995356060]
[5] boost::asio::detail::reactive_socket_service_base::start_op(boost::asio::detail::reactive_socket_service_base::base_implementation_type&, int, boost::asio::detail::reac
tor_op*, bool, bool) in reactive_socket_service_base.ipp:217
[6] void boost::asio::detail::reactive_socket_service<boost::asio::ip::udp>::async_receive_from<boost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<vo
id, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()
> > >(boost::asio::detail::reactive_socket_service<boost::asio::ip::udp>::implementation_type&, boost::asio::mutable_buffers_1 const&, boost::asio::ip::basic_endpoint<boost
::asio::ip::udp>&, int, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::
value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >) in reactive_socket_service.hpp:302
[7] void boost::asio::datagram_socket_service<boost::asio::ip::udp>::async_receive_from<boost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsi
oUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > >(bo
ost::asio::detail::reactive_socket_service<boost::asio::ip::udp>::implementation_type&, boost::asio::mutable_buffers_1 const&, boost::asio::ip::basic_endpoint<boost::asio::
ip::udp>&, int, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > const&) in datagram_socket_service.hpp:360
[8] CAsioUDPSocketImpl::StartBackgroundRead() in LibSocketAsio.cpp:1140
[9] CAsioUDPSocketImpl::HandleRead(boost::system::error_code const&, unsigned long) in LibSocketAsio.cpp:1108
[10] void boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >::operator()<boost::system::error_code, unsigned long>(boost::system::error_code const&, unsigned long const&) in bind_template.hpp:103 
[11] void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>, ...) in handler_invoke_hook.hpp:65
[12] void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >&) in handler_invoke_helpers.hpp:41
[13] boost::asio::detail::reactive_socket_recvfrom_op<boost::asio::mutable_buffers_1, boost::asio::ip::basic_endpoint<boost::asio::ip::udp>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > >::do_complete(boost::asio::detail::task_io_service*, boost::asio::detail::task_io_service_operation*, boost::system::error_code const&, unsigned long) in reactive_socket_recvfrom_op.hpp:118
[14] 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&) in task_io_service.ipp:362
[15] boost::asio::detail::task_io_service::run(boost::system::error_code&) in task_io_service.ipp:146
[16] boost::asio::io_service::run() in io_service.ipp:60
[17] CAsioService::Entry() in LibSocketAsio.cpp:1253
[18] wxThreadInternal::PthreadStart(wxThread*) in /usr/lib/libwx_baseu-2.8.so.0[0x2b7994933851]
[19] ?? in /lib/x86_64-linux-gnu/libpthread.so.0[0x2b799534defc]
[20] clone in /lib/x86_64-linux-gnu/libc.so.6[0x2b799564489d]

--------------------------------------------------------------------------------
Command terminated by signal 6
Logged

stoatwblr

  • Sr. Member
  • ****
  • Karma: 12
  • Offline Offline
  • Posts: 318
Re: 10742-asio crash
« Reply #1 on: February 12, 2012, 08:35:50 PM »

Yes, I know the current is svn 10755, but 43-45 don't matter and  the rest haven't been merged into the asio branch
Logged

Stu Redman

  • Administrator
  • Hero Member
  • *****
  • Karma: 214
  • Offline Offline
  • Posts: 3739
  • Engines screaming
Re: 10742-asio crash
« Reply #2 on: February 12, 2012, 08:51:03 PM »

Sure.
Hm. That's an UDP crash, and UDP is not used in EC.
Logged
The image of mother goddess, lying dormant in the eyes of the dead, the sheaf of the corn is broken, end the harvest, throw the dead on the pyre -- Iron Maiden, Isle of Avalon

Stu Redman

  • Administrator
  • Hero Member
  • *****
  • Karma: 214
  • Offline Offline
  • Posts: 3739
  • Engines screaming
Re: 10742-asio crash
« Reply #3 on: February 12, 2012, 09:35:42 PM »

Tried a possible fix (recreating the UDP socket after an error) - 10757
Logged
The image of mother goddess, lying dormant in the eyes of the dead, the sheaf of the corn is broken, end the harvest, throw the dead on the pyre -- Iron Maiden, Isle of Avalon

stoatwblr

  • Sr. Member
  • ****
  • Karma: 12
  • Offline Offline
  • Posts: 318
Re: 10742-asio crash
« Reply #4 on: February 13, 2012, 11:10:35 AM »


Happened again - trigger this time was a router crash (locked up, no reboot, no offsite networking)

----------------------------=| BACKTRACE FOLLOWS: |=----------------------------
Current version is: aMuleD SVN compiled with wxGTK2 v2.8.12 and Boost 1.48 (Debugging) (Snapshot: rev. 10757)
Running on: Linux 3.2.0-15-generic x86_64


[2] wxFatalSignalHandler in /usr/lib/libwx_baseu-2.8.so.0[0x2b4266f7619c]
[3] CFileAreaSigHandler::Handler(int, siginfo*, void*) in FileArea.cpp:131
[4] ?? in /lib/x86_64-linux-gnu/libpthread.so.0[0x2b4267994060]
[5] void boost::asio::basic_datagram_socket<boost::asio::ip::udp, boost::asio::datagram_socket_service<boost::asio::ip::udp> >::async_receive_from<boost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > >(boost::asio::mutable_buffers_1 const&, boost::asio::ip::basic_endpoint<boost::asio::ip::udp>&, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > const&) in basic_datagram_socket.hpp:836
[6] CAsioUDPSocketImpl::StartBackgroundRead() in LibSocketAsio.cpp:1153
[7] CAsioUDPSocketImpl::HandleRead(boost::system::error_code const&, unsigned long) in LibSocketAsio.cpp:1102
[8] void boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >::operator()<boost::system::error_code, unsigned long>(boost::system::error_code const&, unsigned long const&) in bind_template.hpp:103
[9] void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>, ...) in handler_invoke_hook.hpp:65
[10] void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>&, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >&) in handler_invoke_helpers.hpp:41
[11] boost::asio::detail::reactive_socket_recvfrom_op<boost::asio::mutable_buffers_1, boost::asio::ip::basic_endpoint<boost::asio::ip::udp>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, CAsioUDPSocketImpl, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<CAsioUDPSocketImpl*>, boost::arg<1> (*)(), boost::arg<2> (*)()> > >::do_complete(boost::asio::detail::task_io_service*, boost::asio::detail::task_io_service_operation*, boost::system::error_code const&, unsigned long) in reactive_socket_recvfrom_op.hpp:118
[12] 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&) in task_io_service.ipp:362
[13] boost::asio::detail::task_io_service::run(boost::system::error_code&) in task_io_service.ipp:146
[14] boost::asio::io_service::run() in io_service.ipp:60
[15] CAsioService::Entry() in LibSocketAsio.cpp:1267
[16] wxThreadInternal::PthreadStart(wxThread*) in /usr/lib/libwx_baseu-2.8.so.0[0x2b4266f71851]
[17] ?? in /lib/x86_64-linux-gnu/libpthread.so.0[0x2b426798befc]
[18] clone in /lib/x86_64-linux-gnu/libc.so.6[0x2b4267c8289d]

--------------------------------------------------------------------------------
Command terminated by signal 6
2672.05user 1239.94system 8:07:24elapsed 13%CPU (0avgtext+0avgdata 1994816maxresident)k
106895591inputs+9273608outputs (9073major+13688279minor)pagefaults 0swaps
Logged

Stu Redman

  • Administrator
  • Hero Member
  • *****
  • Karma: 214
  • Offline Offline
  • Posts: 3739
  • Engines screaming
Re: 10742-asio crash
« Reply #5 on: February 13, 2012, 09:46:36 PM »

Was there no message before the "backtrace follows" ?
Can you try to run it with GDB for a proper backtrace?
Logged
The image of mother goddess, lying dormant in the eyes of the dead, the sheaf of the corn is broken, end the harvest, throw the dead on the pyre -- Iron Maiden, Isle of Avalon

stoatwblr

  • Sr. Member
  • ****
  • Karma: 12
  • Offline Offline
  • Posts: 318
Re: 10742-asio crash
« Reply #6 on: February 13, 2012, 11:16:10 PM »

Was there no message before the "backtrace follows" ?
Can you try to run it with GDB for a proper backtrace?

Only the generic failure message. Nothing logged.

I'll try it inside gdb

Logged

stoatwblr

  • Sr. Member
  • ****
  • Karma: 12
  • Offline Offline
  • Posts: 318
Re: 10742-asio crash
« Reply #7 on: February 16, 2012, 05:17:01 PM »

Hmmmmmmmmmm....

With --enable-debug --disable-optimize (so that GDB can work) it's nice and stable.
Logged

Stu Redman

  • Administrator
  • Hero Member
  • *****
  • Karma: 214
  • Offline Offline
  • Posts: 3739
  • Engines screaming
Re: 10742-asio crash
« Reply #8 on: February 16, 2012, 07:28:08 PM »

GDB can work with --enable-optimize too. Maybe you can't see some local variables or so, but in general it should work.
Logged
The image of mother goddess, lying dormant in the eyes of the dead, the sheaf of the corn is broken, end the harvest, throw the dead on the pyre -- Iron Maiden, Isle of Avalon

stoatwblr

  • Sr. Member
  • ****
  • Karma: 12
  • Offline Offline
  • Posts: 318
Re: 10742-asio crash
« Reply #9 on: February 20, 2012, 06:14:36 PM »

It does - but it's still "nice and stable" when run inside the debugger.

Logged

Stu Redman

  • Administrator
  • Hero Member
  • *****
  • Karma: 214
  • Offline Offline
  • Posts: 3739
  • Engines screaming
Re: 10742-asio crash
« Reply #10 on: February 20, 2012, 10:39:03 PM »

Probably outside too. What you described appears to be triggered by some external events (like the router crash), unless that happens again you can't reproduce it apparently.
Logged
The image of mother goddess, lying dormant in the eyes of the dead, the sheaf of the corn is broken, end the harvest, throw the dead on the pyre -- Iron Maiden, Isle of Avalon