Bug 1294578

Summary: [abrt] qbittorrent: boost::throw_exception<boost::system::system_error>(): qbittorrent killed by SIGABRT
Product: [Fedora] Fedora Reporter: Steve Lawrence <ka0pmd>
Component: boostAssignee: Jonathan Wakely <jwakely>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: dakingun, dchris, denis.arnaud_fedora, fale, jwakely, leigh123linux, me
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/26e0275bc7cdcc79e1754ad2b27ca82d91741a6f
Whiteboard: abrt_hash:ae6d5c4793845a65e4038e44ba2154331285d649;
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-14 09:21:26 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: dso_list
none
File: environ
none
File: limits
none
File: maps
none
File: mountinfo
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages none

Description Steve Lawrence 2015-12-29 04:27:05 UTC
Description of problem:
I attempted to add appx. 80 torrents simultaneously.  GUI froze, then segfault alerted.

Version-Release number of selected component:
qbittorrent-3.3.1-2.fc23

Additional info:
reporter:       libreport-2.6.3
backtrace_rating: 4
cmdline:        qbittorrent -session 2864199b8-187d-423f-9eab-c0478f689c47_1451359100_24158
crash_function: boost::throw_exception<boost::system::system_error>
executable:     /usr/bin/qbittorrent
global_pid:     1644
kernel:         4.2.3-300.fc23.x86_64
runlevel:       N 5
type:           CCpp
uid:            1000

Truncated backtrace:
Thread no. 1 (10 frames)
 #6 boost::throw_exception<boost::system::system_error> at /usr/include/boost/throw_exception.hpp:71
 #7 boost::asio::detail::do_throw_error at /usr/include/boost/asio/detail/impl/throw_error.ipp:38
 #8 boost::asio::detail::throw_error at /usr/include/boost/asio/detail/throw_error.hpp:42
 #9 boost::asio::detail::eventfd_select_interrupter::open_descriptors at /usr/include/boost/asio/detail/impl/eventfd_select_interrupter.ipp:91
 #10 boost::asio::detail::epoll_reactor::epoll_reactor at /usr/include/boost/asio/detail/impl/epoll_reactor.ipp:45
 #11 boost::asio::detail::service_registry::create<boost::asio::detail::epoll_reactor> at /usr/include/boost/asio/detail/impl/service_registry.hpp:81
 #12 boost::asio::detail::service_registry::do_use_service at /usr/include/boost/asio/detail/impl/service_registry.ipp:123
 #13 boost::asio::detail::service_registry::use_service<boost::asio::detail::epoll_reactor> at /usr/include/boost/asio/detail/impl/service_registry.hpp:48
 #14 boost::asio::use_service<boost::asio::detail::epoll_reactor> at /usr/include/boost/asio/impl/io_service.hpp:33
 #15 boost::asio::detail::reactive_socket_service_base::reactive_socket_service_base at /usr/include/boost/asio/detail/impl/reactive_socket_service_base.ipp:33

Comment 1 Steve Lawrence 2015-12-29 04:27:11 UTC
Created attachment 1110075 [details]
File: backtrace

Comment 2 Steve Lawrence 2015-12-29 04:27:12 UTC
Created attachment 1110076 [details]
File: cgroup

Comment 3 Steve Lawrence 2015-12-29 04:27:13 UTC
Created attachment 1110077 [details]
File: core_backtrace

Comment 4 Steve Lawrence 2015-12-29 04:27:15 UTC
Created attachment 1110078 [details]
File: dso_list

Comment 5 Steve Lawrence 2015-12-29 04:27:16 UTC
Created attachment 1110079 [details]
File: environ

Comment 6 Steve Lawrence 2015-12-29 04:27:17 UTC
Created attachment 1110080 [details]
File: limits

Comment 7 Steve Lawrence 2015-12-29 04:27:18 UTC
Created attachment 1110081 [details]
File: maps

Comment 8 Steve Lawrence 2015-12-29 04:27:19 UTC
Created attachment 1110082 [details]
File: mountinfo

Comment 9 Steve Lawrence 2015-12-29 04:27:21 UTC
Created attachment 1110083 [details]
File: open_fds

Comment 10 Steve Lawrence 2015-12-29 04:27:22 UTC
Created attachment 1110084 [details]
File: proc_pid_status

Comment 11 Steve Lawrence 2015-12-29 04:27:23 UTC
Created attachment 1110085 [details]
File: var_log_messages

Comment 12 Fabio Alessandro Locati 2016-03-13 18:51:21 UTC
This seems to be a boost problem to me.

Comment 13 Jonathan Wakely 2016-03-14 08:20:48 UTC
The code that throws is:

    if (pipe(pipe_fds) == 0)
    {
      ...
    }
    else
    {
      boost::system::error_code ec(errno,
          boost::asio::error::get_system_category());
      boost::asio::detail::throw_error(ec, "eventfd_select_interrupter");
    }

So it's not a boost problem, it means a system call failed. Maybe because you have too many open files.

Comment 14 Jonathan Wakely 2016-03-14 09:21:26 UTC
(In reply to Steve Lawrence from comment #0)
> Description of problem:
> I attempted to add appx. 80 torrents simultaneously.  GUI froze, then
> segfault alerted.

It was not a segfault. An uncaught exception will cause the program to abort, not segfault, and the attachment in comment 11 shows sig=6 i.e. SIGABRT.

Comment 6 shows your max open files is 1024 and comment 9 shows you have 1024 open files. The pipe() call failed, Boost.Asio threw an exception, and the program exited, so the software worked exactly as designed.