qbittorrent / qBittorrent

qBittorrent BitTorrent client
https://www.qbittorrent.org
Other
26.12k stars 3.84k forks source link

high throughput reliably slows, locks, crashes OSX Catalina 10.15.3 #12145

Open kquinsland opened 4 years ago

kquinsland commented 4 years ago

I have taken the time to omit certain personal details in the provided log and screenshots. Great care was taken to make sure the omissions do not hinder technical details, however.

qBittorrent version and Operating System

I am running OSX Catalina (Stable), fully patched as of posting. Likewise, all connected devices and peripherals have Up To Date firmware (as of posting)

$ system_profiler SPSoftwareDataType
Software:

    System Software Overview:

      System Version: macOS 10.15.3 (19D76)
      Kernel Version: Darwin 19.3.0
      Boot Volume: root
      Boot Mode: Normal
      Computer Name: $MyHostName
      User Name: $MyUserName
      Secure Virtual Memory: Enabled
      System Integrity Protection: Enabled
      Time since boot: 10 minutes

My physical hardware:

$ system_profiler SPHardwareDataType | grep "Model Identifier"
      Model Identifier: MacBookPro15,2

See the attached screenshot for qBit torrent and library versions:

qbit-version

What is the problem

I can reliably get OSX to lock up and then crash / reboot when qBittorrent has many torrents in an Active/Downloading state or there is otherwise high CPU usage from qBittorrent.

The first few times that the crash happened, i thought it was a random fluke event. Around the third crash, I started to notice similarities in symptoms and began to actually research the stack trace that OSX presented on login after the reboot. The key bit from each crash is:

(1 monitored services unresponsive): remoted connection watchdog expired, 303 successful replies since load, last successful checkin 60 seconds ago

The numbers are different each time, but the monitored services unresponsive is consistent. When first looking for other OSX errors related to watchdogd I found a few users that mentioned external monitors and docking stations... which wasn't helpful as I can reproduce this crash with no external monitor or docking station attached. Other than the power cord, the only devices I have attached are a USB3 hub which has both a USB NIC and a USB hard drive attached.

When I changed the gigabit USB NIC out for a 10/100 NIC, I had multiple hours of stability... which was my clue that there's something about the hard limits of a 10/100 USB NIC that keeps system state under whatever threshold results in a crash.

I was able to do some additional testing with a Thunderbolt 3 attached intel NIC; limiting qBittorrent to around 20MiB/s seems to keep things stable-ish. Going much beyond that, though, will only shorten the time until the next crash event.

That's about as far as I've gone to narrow down the issue... it's not conclusive, but my gut + what i see in Console.app really does indicate that qBittorrent is hitting some limits that brings OSX down.

What is the expected behavior

I would expect that qBitotrrent uses resources as best it can but does not risk system stability to do so.

Steps to reproduce

I am orders of magnitude more familiar with GNU/Linux system internals than I am with xnu/bsd internals... so please bear with me if this isn't a super rigorous reproduction method. I am open to any feedback about how to better / more precisely measure OSX and qBittorrent to provide more detail!

  1. Find a collection of torrents that will deliver very high throughput for a sustained period of time. 50 or so torrents with a median file size of 10-15 GB should do the trick. Obviously, you'll need an internet connection that's capable of 40+ MB/s. I am not currently in a position to replicate this over a LAN, but I presume that 50 torrents each describing a 5-15GB payload of dummy data would work for LAN based testing. Perhaps downloading the entirety of a public media tracker (like the CCC; see here) may also be sufficient as that would be substituting tens of large transfers for hundreds of smaller transfers. I believe that the "goal" is to keep qBittorrent very busy with a lot of disk and network IO for sustained periods of time... so downloading every Linux Distro ISO you can get your hands on and saving them all to /dev/null or similar may also work.

You may need less throughput on a system with fewer compute/memory resources, but I do not have any older OSX machines that I can test that on.

  1. Have as many active torrents as needed to achieve 30+ MB/s of throughput going. Configure qBitotrrent so that all torrents seed indefinitely once downloaded.

  2. Wait. I have found that increasing the load on the system (e.g. 20+ Chrome tabs or some other ram heavy application idle in background) can hasten the crash. I have not been able to consistently trigger it, but I have found that placing a bursty load on the system usually does. E.G.: From a crash/reboot, decline to open all applications that were open and start only qBittorrent. Close all apps that launch by default on login. Then, launch a Chrome session and, when prompted, restore the 15+ tabs that were open. If you do this while qBittorrent is still in the process of scanning the partial downloads trying to figure out where it left off before the crash, another crash is imminent.

However, the system will also crash when left "alone" and with no significant load. That is: all applications except for qBittorrent are closed. System is plugged in and power settings are configured so that the screen may turn off but the system may not enter sleep so long as the unit it plugged in. Unfortunately, I don't know how long this takes as the system is usually unattended and I come back to it to find that it's powered off or at the login/unlock screen.

You'll know a crash is imminent because things in the background freeze / stop updating, but the foreground application seems/looks responsive. E.G.: The 'badge' on the qBitotrrent icon in the Dock will stop updating the download speed, but I can still scroll through the list of torrents loaded in qBittorrent. I can still scroll through the foreground Chrome tab, but refreshing the tab or clicking any link or opening a new tab will fail. In some cases, applications will display a 'classic' OSX style loading circle as if they're waiting for some process to render the content that should be in their window. This usually indicates that a crash is imminent.

While drafting this post, i've kept a very close eye on transfers. I've set the throttle to about 20 MiB/s in the down direction and haven't had a crash in the hour or so it's taken to draft this. I have had several moments when my cursor would freeze and keystrokes would take several seconds to appear as the fans on this macbook spin up, however. This same behavior is usually the initial indicator that further instability is around the corner, but because of the throttle, i've managed to keep the system up.

Extra info(if any)

See attached for the number of Spin Reports. I believe this is OSX parlance for "beach balls"... a 100% accurate predictor that a crash and reboot is imminent

diag-cpu-01

diag-wakeup-01

spin-reports-01

I believe my issue is related to, but those tickets are not well documented, so it's hard to be sure.

https://github.com/qbittorrent/qBittorrent/issues/12118 https://github.com/qbittorrent/qBittorrent/issues/12111

Main application:

qBittorrent_v4_2_1

Here is the full qbittorrent_2020-03-06-111432_$MyHostName.cpu_resource (as shown in screenshots)

Date/Time:        2020-03-06 11:12:12 -0800
End time:         2020-03-06 11:14:31 -0800
OS Version:       Mac OS X 10.15.3 (Build 19D76)
Architecture:     x86_64h
Report Version:   29
Incident Identifier: 677D4393-F931-41F0-A8AF-02CA6304D55E

Data Source:      Microstackshots
Shared Cache:     0x3a97000 C976DDA3-C600-346E-8475-FA72F67EB13D

Command:          qbittorrent
Path:             /Applications/qBittorrent.app/Contents/MacOS/qbittorrent
Identifier:       org.qbittorrent.qBittorrent
Version:          4.2.1 (???)
PID:              411

Event:            cpu usage
Action taken:     none
CPU:              90 seconds cpu time over 140 seconds (65% cpu average), exceeding limit of 50% cpu over 180 seconds
CPU limit:        90s
Limit duration:   180s
CPU used:         90s
CPU duration:     140s
Duration:         139.53s
Duration Sampled: 133.39s
Steps:            29

Hardware model:   MacBookPro15,2
Active cpus:      8
Boot args:        chunklist-security-epoch=0 -chunklist-no-rev2-dev

Heaviest stack for the target process:
  29  thread_start + 15 (libsystem_pthread.dylib + 6203) [0x7fff66d6383b]
  29  _pthread_start + 148 (libsystem_pthread.dylib + 24165) [0x7fff66d67e65]
  18  ??? (libtorrent-rasterbar.10.dylib + 294504) [0x10114ee68]
  16  ??? (libtorrent-rasterbar.10.dylib + 271921) [0x101149631]
  16  ??? (libtorrent-rasterbar.10.dylib + 271376) [0x101149410]
  12  ??? (libtorrent-rasterbar.10.dylib + 251345) [0x1011445d1]
  9   ??? (libtorrent-rasterbar.10.dylib + 263960) [0x101147718]
  9   libtorrent::default_storage::readv(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1716853) [0x1012aa275]
  9   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x1012ab5c6]
  9   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x1012ab6c7]
  9   ??? (libtorrent-rasterbar.10.dylib + 1719272) [0x1012aabe8]
  9   pread + 10 (libsystem_kernel.dylib + 9958) [0x7fff66ca56e6]

Powerstats for:   qbittorrent [411]
UUID:             977685FD-606F-38BF-9AFD-CC1CE05966EE
Path:             /Applications/qBittorrent.app/Contents/MacOS/qbittorrent
Architecture:     x86_64
Footprint:        273.49 MB -> 240.39 MB (-33.10 MB)
Pageins:          2 pages
Start time:       2020-03-06 11:12:18 -0800
End time:         2020-03-06 11:14:31 -0800
Num samples:      29 (100%)
CPU Time:         97.981s
Primary state:    25 samples Frontmost App, Non-Suppressed, Kernel mode, Effective Thread QoS Default, Requested Thread QoS Default, Override Thread QoS Unspecified
User Activity:    0 samples Idle, 29 samples Active
Power Source:     0 samples on Battery, 29 samples on AC
  29  thread_start + 15 (libsystem_pthread.dylib + 6203) [0x7fff66d6383b]
    29  _pthread_start + 148 (libsystem_pthread.dylib + 24165) [0x7fff66d67e65]
      18  ??? (libtorrent-rasterbar.10.dylib + 294504) [0x10114ee68]
        16  ??? (libtorrent-rasterbar.10.dylib + 271921) [0x101149631]
          16  ??? (libtorrent-rasterbar.10.dylib + 271376) [0x101149410]
            12  ??? (libtorrent-rasterbar.10.dylib + 251345) [0x1011445d1]
              9   ??? (libtorrent-rasterbar.10.dylib + 263960) [0x101147718]
                9   libtorrent::default_storage::readv(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1716853) [0x1012aa275]
                  9   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x1012ab5c6]
                    9   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x1012ab6c7]
                      9   ??? (libtorrent-rasterbar.10.dylib + 1719272) [0x1012aabe8]
                        9   pread + 10 (libsystem_kernel.dylib + 9958) [0x7fff66ca56e6]
                          1   <User mode>
              2   ??? (libtorrent-rasterbar.10.dylib + 264696) [0x1011479f8]
                2   libtorrent::default_storage::readv(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1716853) [0x1012aa275]
                  2   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x1012ab5c6]
                    2   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x1012ab6c7]
                      1   ??? (libtorrent-rasterbar.10.dylib + 1719272) [0x1012aabe8]
                        1   pread + 10 (libsystem_kernel.dylib + 9958) [0x7fff66ca56e6]
                      1   ??? (libtorrent-rasterbar.10.dylib + 1719210) [0x1012aabaa]
                        1   libtorrent::default_storage::open_file(libtorrent::aux::strong_typedef<int, libtorrent::aux::file_index_tag, void>, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) const + 41 (libtorrent-rasterbar.10.dylib + 1711227) [0x1012a8c7b]
                          1   libtorrent::default_storage::open_file_impl(libtorrent::aux::strong_typedef<int, libtorrent::aux::file_index_tag, void>, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, boost::system::error_code&) const + 256 (libtorrent-rasterbar.10.dylib + 1717404) [0x1012aa49c]
                            1   libtorrent::file_pool::open_file(libtorrent::aux::strong_typedef<unsigned int, libtorrent::storage_index_tag_t, void>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, libtorrent::aux::strong_typedef<int, libtorrent::aux::file_index_tag, void>, libtorrent::file_storage const&, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, boost::system::error_code&) + 908 (libtorrent-rasterbar.10.dylib + 334700) [0x101158b6c]
                              1   close + 10 (libsystem_kernel.dylib + 7270) [0x7fff66ca4c66]
              1   ??? (libtorrent-rasterbar.10.dylib + 270264) [0x101148fb8]
                1   ??? (libtorrent-rasterbar.10.dylib + 246401) [0x101143281]
                  1   ??? (libtorrent-rasterbar.10.dylib + 247265) [0x1011435e1]
                    1   libtorrent::default_storage::writev(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1717045) [0x1012aa335]
                      1   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x1012ab5c6]
                        1   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x1012ab6c7]
                          1   ??? (libtorrent-rasterbar.10.dylib + 1720019) [0x1012aaed3]
                            1   pwrite + 10 (libsystem_kernel.dylib + 15470) [0x7fff66ca6c6e]
            4   ??? (libtorrent-rasterbar.10.dylib + 251441) [0x101144631]
              4   ??? (libtorrent-rasterbar.10.dylib + 249577) [0x101143ee9]
                4   ??? (libtorrent-rasterbar.10.dylib + 246401) [0x101143281]
                  4   ??? (libtorrent-rasterbar.10.dylib + 247265) [0x1011435e1]
                    4   libtorrent::default_storage::writev(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1717045) [0x1012aa335]
                      4   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x1012ab5c6]
                        4   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x1012ab6c7]
                          3   ??? (libtorrent-rasterbar.10.dylib + 1720019) [0x1012aaed3]
                            3   pwrite + 10 (libsystem_kernel.dylib + 15470) [0x7fff66ca6c6e]
                              1   <Non-Frontmost App>
                          1   ??? (libtorrent-rasterbar.10.dylib + 1720110) [0x1012aaf2e]
                            1   close + 10 (libsystem_kernel.dylib + 7270) [0x7fff66ca4c66]
        2   ??? (libtorrent-rasterbar.10.dylib + 271838) [0x1011495de]
          2   ??? (libtorrent-rasterbar.10.dylib + 271636) [0x101149514]
            2   std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18 (libc++.1.dylib + 31786) [0x7fff63c7bc2a]
              2   __psynch_cvwait + 10 (libsystem_kernel.dylib + 15590) [0x7fff66ca6ce6]
      11  ??? (libtorrent-rasterbar.10.dylib + 1229311) [0x1012331ff]
        11  ??? (libtorrent-rasterbar.10.dylib + 126142) [0x101125cbe]
          10  ??? (libtorrent-rasterbar.10.dylib + 946365) [0x1011ee0bd]
            7   ??? (libtorrent-rasterbar.10.dylib + 1502464) [0x101275d00]
              7   ??? (libtorrent-rasterbar.10.dylib + 1503270) [0x101276026]
                4   ??? (libtorrent-rasterbar.10.dylib + 1373078) [0x101256396]
                  4   ??? (libtorrent-rasterbar.10.dylib + 2153854) [0x101314d7e]
                    4   ??? (libtorrent-rasterbar.10.dylib + 2164418) [0x1013176c2]
                      4   __recvmsg + 10 (libsystem_kernel.dylib + 19178) [0x7fff66ca7aea]
                2   ??? (libtorrent-rasterbar.10.dylib + 1373246) [0x10125643e]
                  2   ??? (libtorrent-rasterbar.10.dylib + 2271668) [0x1013319b4]
                    2   ??? (libtorrent-rasterbar.10.dylib + 2284616) [0x101334c48]
                      2   ??? (libtorrent-rasterbar.10.dylib + 2271344) [0x101331870]
                        2   ??? (libtorrent-rasterbar.10.dylib + 2271437) [0x1013318cd]
                          2   ??? (libtorrent-rasterbar.10.dylib + 1471139) [0x10126e2a3]
                            2   ??? (libtorrent-rasterbar.10.dylib + 1338222) [0x10124db6e]
                              2   ??? (libtorrent-rasterbar.10.dylib + 2156263) [0x1013156e7]
                                2   __sendmsg + 10 (libsystem_kernel.dylib + 22582) [0x7fff66ca8836]
                1   ??? (libtorrent-rasterbar.10.dylib + 1374125) [0x1012567ad]
                  1   ??? (libtorrent-rasterbar.10.dylib + 2272989) [0x101331edd]
                    1   ??? (libtorrent-rasterbar.10.dylib + 2283632) [0x101334870]
                      1   ??? (libtorrent-rasterbar.10.dylib + 1141464) [0x10121dad8]
                        1   <User mode>
            2   ??? (libtorrent-rasterbar.10.dylib + 1518517) [0x101279bb5]
              2   ??? (libtorrent-rasterbar.10.dylib + 1519007) [0x101279d9f]
                2   ??? (libtorrent-rasterbar.10.dylib + 1473422) [0x10126eb8e]
                  2   ??? (libtorrent-rasterbar.10.dylib + 1392330) [0x10125aeca]
                    2   ??? (libtorrent-rasterbar.10.dylib + 100667) [0x10111f93b]
                      2   ??? (libtorrent-rasterbar.10.dylib + 908478) [0x1011e4cbe]
                        2   ??? (libtorrent-rasterbar.10.dylib + 933671) [0x1011eaf27]
                          2   ??? (libtorrent-rasterbar.10.dylib + 1042593) [0x1012058a1]
                            2   ??? (libtorrent-rasterbar.10.dylib + 1042881) [0x1012059c1]
                              2   ??? (libtorrent-rasterbar.10.dylib + 408835) [0x10116ad03]
                                2   __recvmsg + 10 (libsystem_kernel.dylib + 19178) [0x7fff66ca7aea]
            1   ??? (libtorrent-rasterbar.10.dylib + 1043530) [0x101205c4a]
              1   ??? (libtorrent-rasterbar.10.dylib + 993808) [0x1011f9a10]
                1   ??? (libtorrent-rasterbar.10.dylib + 934796) [0x1011eb38c]
                  1   ??? (libtorrent-rasterbar.10.dylib + 177764) [0x101132664]
                    1   ??? (libtorrent-rasterbar.10.dylib + 185351) [0x101134407]
                      1   ??? (libtorrent-rasterbar.10.dylib + 169890) [0x1011307a2]
                        1   ??? (libtorrent-rasterbar.10.dylib + 160139) [0x10112e18b]
                          1   std::__1::__shared_weak_count::__release_weak() + 26 (libc++.1.dylib + 19750) [0x7fff63c78d26]
                            1   <User mode>
          1   ??? (libtorrent-rasterbar.10.dylib + 946168) [0x1011edff8]
            1   kevent + 10 (libsystem_kernel.dylib + 23502) [0x7fff66ca8bce]

  Binary Images:
           0x1008c8000 -        0x100feafff  org.qbittorrent.qBittorrent 4.2.1 (0) <977685FD-606F-38BF-9AFD-CC1CE05966EE>  /Applications/qBittorrent.app/Contents/MacOS/qbittorrent
           0x101107000 -        0x10140cfff  libtorrent-rasterbar.10.dylib (0)     <435C2C04-2640-3369-B6F1-9759142FAD71>  /Applications/qBittorrent.app/Contents/Frameworks/libtorrent-rasterbar.10.dylib
        0x7fff63c74000 -     0x7fff63cc7fff  libc++.1.dylib (800.7)                <1D0CB627-8A78-329F-A679-1B5248FF4C59>  /usr/lib/libc++.1.dylib
        0x7fff66ca3000 -     0x7fff66ccffff  libsystem_kernel.dylib (6153.81.5)    <23909F45-79C3-34C9-A28F-337915925E5E>  /usr/lib/system/libsystem_kernel.dylib
        0x7fff66d62000 -     0x7fff66d6cfff  libsystem_pthread.dylib (416.60.2)    <AAF506F4-9455-3CC4-8E0B-6791E3C0993C>  /usr/lib/system/libsystem_pthread.dylib

Here is the full qbittorrent_2020-03-08-100700_$MyHostName.wakeups_resource (as shown in screenshots):

Date/Time:        2020-03-08 10:05:48 -0700
End time:         2020-03-08 10:07:00 -0700
OS Version:       Mac OS X 10.15.3 (Build 19D76)
Architecture:     x86_64h
Report Version:   29
Incident Identifier: 736EDCDC-09CB-4F30-861A-E245D777CB94

Data Source:      Microstackshots
Shared Cache:     0x9b09000 C976DDA3-C600-346E-8475-FA72F67EB13D

Command:          qbittorrent
Path:             /Applications/qBittorrent.app/Contents/MacOS/qbittorrent
Identifier:       org.qbittorrent.qBittorrent
Version:          4.2.1 (???)
PID:              11094

Event:            wakeups
Action taken:     none
Wakeups:          45001 wakeups over the last 72 seconds (625 wakeups per second average), exceeding limit of 150 wakeups per second over 300 seconds
Wakeups limit:    45000
Limit duration:   300s
Wakeups caused:   45001
Wakeups duration: 72s
Duration:         72.02s
Duration Sampled: 70.88s
Steps:            22

Hardware model:   MacBookPro15,2
Active cpus:      8
Boot args:        chunklist-security-epoch=0 -chunklist-no-rev2-dev

Heaviest stack for the target process:
  16  thread_start + 15 (libsystem_pthread.dylib + 6203) [0x7fff6cdd583b]
  16  _pthread_start + 148 (libsystem_pthread.dylib + 24165) [0x7fff6cdd9e65]
  8   ??? (libtorrent-rasterbar.10.dylib + 1229311) [0x10fe8d1ff]
  8   ??? (libtorrent-rasterbar.10.dylib + 126142) [0x10fd7fcbe]
  8   ??? (libtorrent-rasterbar.10.dylib + 946365) [0x10fe480bd]
  6   ??? (libtorrent-rasterbar.10.dylib + 1502464) [0x10fecfd00]
  6   ??? (libtorrent-rasterbar.10.dylib + 1503270) [0x10fed0026]
  3   ??? (libtorrent-rasterbar.10.dylib + 1373423) [0x10feb04ef]
  3   ??? (libtorrent-rasterbar.10.dylib + 2372304) [0x10ffa42d0]
  3   ??? (libtorrent-rasterbar.10.dylib + 2408643) [0x10ffad0c3]
  3   ??? (libtorrent-rasterbar.10.dylib + 2500365) [0x10ffc370d]
  2   ??? (libtorrent-rasterbar.10.dylib + 2520027) [0x10ffc83db]
  2   ??? (libtorrent-rasterbar.10.dylib + 1923630) [0x10ff36a2e]
  2   ??? (libtorrent-rasterbar.10.dylib + 1799540) [0x10ff18574]
  2   ??? (libtorrent-rasterbar.10.dylib + 1799977) [0x10ff18729]
  2   ??? (libtorrent-rasterbar.10.dylib + 1761032) [0x10ff0ef08]
  2   ??? (libtorrent-rasterbar.10.dylib + 2374599) [0x10ffa4bc7]
  2   ??? (libtorrent-rasterbar.10.dylib + 2417816) [0x10ffaf498]
  2   ??? (libtorrent-rasterbar.10.dylib + 2418511) [0x10ffaf74f]
  2   ??? (libtorrent-rasterbar.10.dylib + 2502815) [0x10ffc409f]
  2   ??? (libtorrent-rasterbar.10.dylib + 2375472) [0x10ffa4f30]
  2   ??? (libtorrent-rasterbar.10.dylib + 2143599) [0x10ff6c56f]
  2   ??? (libtorrent-rasterbar.10.dylib + 1543680) [0x10fed9e00]
  2   ??? (libtorrent-rasterbar.10.dylib + 1337792) [0x10fea79c0]
  2   ??? (libtorrent-rasterbar.10.dylib + 1338222) [0x10fea7b6e]
  2   ??? (libtorrent-rasterbar.10.dylib + 2156263) [0x10ff6f6e7]
  2   __sendmsg + 10 (libsystem_kernel.dylib + 22582) [0x7fff6cd1a836]

Powerstats for:   qbittorrent [11094]
UUID:             977685FD-606F-38BF-9AFD-CC1CE05966EE
Path:             /Applications/qBittorrent.app/Contents/MacOS/qbittorrent
Architecture:     x86_64
Footprint:        16.60 MB -> 466.07 MB (+449.48 MB)
Pageins:          35 pages
Start time:       2020-03-08 10:05:49 -0700
End time:         2020-03-08 10:06:59 -0700
Num samples:      22 (100%)
CPU Time:         23.718s
Primary state:    8 samples Non-Frontmost App, Non-Suppressed, Kernel mode, Effective Thread QoS Default, Requested Thread QoS Default, Override Thread QoS Unspecified
User Activity:    0 samples Idle, 22 samples Active
Power Source:     0 samples on Battery, 22 samples on AC
  16  thread_start + 15 (libsystem_pthread.dylib + 6203) [0x7fff6cdd583b]
    16  _pthread_start + 148 (libsystem_pthread.dylib + 24165) [0x7fff6cdd9e65]
      8   ??? (libtorrent-rasterbar.10.dylib + 1229311) [0x10fe8d1ff]
        8   ??? (libtorrent-rasterbar.10.dylib + 126142) [0x10fd7fcbe]
          8   ??? (libtorrent-rasterbar.10.dylib + 946365) [0x10fe480bd]
            6   ??? (libtorrent-rasterbar.10.dylib + 1502464) [0x10fecfd00]
              6   ??? (libtorrent-rasterbar.10.dylib + 1503270) [0x10fed0026]
                3   ??? (libtorrent-rasterbar.10.dylib + 1373423) [0x10feb04ef]
                  3   ??? (libtorrent-rasterbar.10.dylib + 2372304) [0x10ffa42d0]
                    3   ??? (libtorrent-rasterbar.10.dylib + 2408643) [0x10ffad0c3]
                      3   ??? (libtorrent-rasterbar.10.dylib + 2500365) [0x10ffc370d]
                        2   ??? (libtorrent-rasterbar.10.dylib + 2520027) [0x10ffc83db]
                          2   ??? (libtorrent-rasterbar.10.dylib + 1923630) [0x10ff36a2e]
                            2   ??? (libtorrent-rasterbar.10.dylib + 1799540) [0x10ff18574]
                              2   ??? (libtorrent-rasterbar.10.dylib + 1799977) [0x10ff18729]
                                2   ??? (libtorrent-rasterbar.10.dylib + 1761032) [0x10ff0ef08]
                                  2   ??? (libtorrent-rasterbar.10.dylib + 2374599) [0x10ffa4bc7]
                                    2   ??? (libtorrent-rasterbar.10.dylib + 2417816) [0x10ffaf498]
                                      2   ??? (libtorrent-rasterbar.10.dylib + 2418511) [0x10ffaf74f]
                                        2   ??? (libtorrent-rasterbar.10.dylib + 2502815) [0x10ffc409f]
                                          2   ??? (libtorrent-rasterbar.10.dylib + 2375472) [0x10ffa4f30]
                                            2   ??? (libtorrent-rasterbar.10.dylib + 2143599) [0x10ff6c56f]
                                              2   ??? (libtorrent-rasterbar.10.dylib + 1543680) [0x10fed9e00]
                                                2   ??? (libtorrent-rasterbar.10.dylib + 1337792) [0x10fea79c0]
                                                  2   ??? (libtorrent-rasterbar.10.dylib + 1338222) [0x10fea7b6e]
                                                    2   ??? (libtorrent-rasterbar.10.dylib + 2156263) [0x10ff6f6e7]
                                                      2   __sendmsg + 10 (libsystem_kernel.dylib + 22582) [0x7fff6cd1a836]
                                                        1   <Frontmost App>
                        1   ??? (libtorrent-rasterbar.10.dylib + 2520056) [0x10ffc83f8]
                          1   ??? (libtorrent-rasterbar.10.dylib + 2393244) [0x10ffa949c]
                            1   ??? (libtorrent-rasterbar.10.dylib + 2496531) [0x10ffc2813]
                              1   ??? (libtorrent-rasterbar.10.dylib + 2511802) [0x10ffc63ba]
                                1   ??? (libtorrent-rasterbar.10.dylib + 2511320) [0x10ffc61d8]
                                  1   ??? (libtorrent-rasterbar.10.dylib + 2522106) [0x10ffc8bfa]
                                    1   ??? (libtorrent-rasterbar.10.dylib + 2502815) [0x10ffc409f]
                                      1   ??? (libtorrent-rasterbar.10.dylib + 2375472) [0x10ffa4f30]
                                        1   ??? (libtorrent-rasterbar.10.dylib + 2143599) [0x10ff6c56f]
                                          1   ??? (libtorrent-rasterbar.10.dylib + 1543680) [0x10fed9e00]
                                            1   ??? (libtorrent-rasterbar.10.dylib + 1337792) [0x10fea79c0]
                                              1   ??? (libtorrent-rasterbar.10.dylib + 1338222) [0x10fea7b6e]
                                                1   ??? (libtorrent-rasterbar.10.dylib + 2156263) [0x10ff6f6e7]
                                                  1   __sendmsg + 10 (libsystem_kernel.dylib + 22582) [0x7fff6cd1a836]
                2   ??? (libtorrent-rasterbar.10.dylib + 1373246) [0x10feb043e]
                  2   ??? (libtorrent-rasterbar.10.dylib + 2271642) [0x10ff8b99a]
                    2   ??? (libtorrent-rasterbar.10.dylib + 2281521) [0x10ff8e031]
                      1   ??? (libtorrent-rasterbar.10.dylib + 2284616) [0x10ff8ec48]
                        1   ??? (libtorrent-rasterbar.10.dylib + 2271344) [0x10ff8b870]
                          1   ??? (libtorrent-rasterbar.10.dylib + 2271437) [0x10ff8b8cd]
                            1   ??? (libtorrent-rasterbar.10.dylib + 1471139) [0x10fec82a3]
                              1   ??? (libtorrent-rasterbar.10.dylib + 1338222) [0x10fea7b6e]
                                1   ??? (libtorrent-rasterbar.10.dylib + 2156263) [0x10ff6f6e7]
                                  1   __sendmsg + 10 (libsystem_kernel.dylib + 22582) [0x7fff6cd1a836]
                                    1   <Frontmost App>
                      1   ??? (libtorrent-rasterbar.10.dylib + 2282425) [0x10ff8e3b9]
                        1   ??? (libtorrent-rasterbar.10.dylib + 1141522) [0x10fe77b12]
                          1   <User mode>
                1   ??? (libtorrent-rasterbar.10.dylib + 1373078) [0x10feb0396]
                  1   ??? (libtorrent-rasterbar.10.dylib + 2153854) [0x10ff6ed7e]
                    1   ??? (libtorrent-rasterbar.10.dylib + 2164418) [0x10ff716c2]
                      1   __recvmsg + 10 (libsystem_kernel.dylib + 19178) [0x7fff6cd19aea]
            1   ??? (libtorrent-rasterbar.10.dylib + 2147007) [0x10ff6d2bf]
              1   ??? (libtorrent-rasterbar.10.dylib + 2147361) [0x10ff6d421]
                1   ??? (libtorrent-rasterbar.10.dylib + 2137925) [0x10ff6af45]
                  1   ??? (libtorrent-rasterbar.10.dylib + 1897769) [0x10ff30529]
                    1   ??? (libtorrent-rasterbar.10.dylib + 1898032) [0x10ff30630]
                      1   ??? (libtorrent-rasterbar.10.dylib + 92086) [0x10fd777b6]
                        1   QMetaObject::invokeMethodImpl(QObject*, QtPrivate::QSlotObjectBase*, Qt::ConnectionType, void*) + 671 (QtCore + 1572389) [0x110fc7e25]
                          1   QCoreApplication::postEvent(QObject*, QEvent*, int) + 326 (QtCore + 1544434) [0x110fc10f2]
                            1   CFRunLoopWakeUp + 246 (CoreFoundation + 430931) [0x7fff356af353]
                              1   mach_msg_trap + 10 (libsystem_kernel.dylib + 4698) [0x7fff6cd1625a]
                                1   <Effective Thread QoS User Interactive>
            1   ??? (libtorrent-rasterbar.10.dylib + 1962675) [0x10ff402b3]
              1   ??? (libtorrent-rasterbar.10.dylib + 1963552) [0x10ff40620]
                1   ??? (libtorrent-rasterbar.10.dylib + 1792868) [0x10ff16b64]
                  1   ??? (libtorrent-rasterbar.10.dylib + 1796515) [0x10ff179a3]
                    1   ??? (libtorrent-rasterbar.10.dylib + 1803024) [0x10ff19310]
                      1   ??? (libtorrent-rasterbar.10.dylib + 92086) [0x10fd777b6]
                        1   QMetaObject::invokeMethodImpl(QObject*, QtPrivate::QSlotObjectBase*, Qt::ConnectionType, void*) + 671 (QtCore + 1572389) [0x110fc7e25]
                          1   QCoreApplication::postEvent(QObject*, QEvent*, int) + 326 (QtCore + 1544434) [0x110fc10f2]
                            1   CFRunLoopWakeUp + 246 (CoreFoundation + 430931) [0x7fff356af353]
                              1   mach_msg_trap + 10 (libsystem_kernel.dylib + 4698) [0x7fff6cd1625a]
                                1   <Frontmost App>
      7   ??? (libtorrent-rasterbar.10.dylib + 294504) [0x10fda8e68]
        4   ??? (libtorrent-rasterbar.10.dylib + 271921) [0x10fda3631]
          4   ??? (libtorrent-rasterbar.10.dylib + 271376) [0x10fda3410]
            4   ??? (libtorrent-rasterbar.10.dylib + 251345) [0x10fd9e5d1]
              2   ??? (libtorrent-rasterbar.10.dylib + 270264) [0x10fda2fb8]
                2   ??? (libtorrent-rasterbar.10.dylib + 246401) [0x10fd9d281]
                  2   ??? (libtorrent-rasterbar.10.dylib + 247265) [0x10fd9d5e1]
                    2   libtorrent::default_storage::writev(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1717045) [0x10ff04335]
                      2   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x10ff055c6]
                        2   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x10ff056c7]
                          2   ??? (libtorrent-rasterbar.10.dylib + 1720019) [0x10ff04ed3]
                            2   pwrite + 10 (libsystem_kernel.dylib + 15470) [0x7fff6cd18c6e]
              2   ??? (libtorrent-rasterbar.10.dylib + 253198) [0x10fd9ed0e]
                2   libtorrent::default_storage::readv(libtorrent::span<libtorrent::span<char> const>, libtorrent::aux::strong_typedef<int, libtorrent::aux::piece_index_tag, void>, int, libtorrent::flags::bitfield_flag<unsigned int, libtorrent::open_mode_tag, void>, libtorrent::storage_error&) + 89 (libtorrent-rasterbar.10.dylib + 1716853) [0x10ff04275]
                  2   ??? (libtorrent-rasterbar.10.dylib + 1721798) [0x10ff055c6]
                    2   ??? (libtorrent-rasterbar.10.dylib + 1722055) [0x10ff056c7]
                      2   ??? (libtorrent-rasterbar.10.dylib + 1719272) [0x10ff04be8]
                        2   pread + 10 (libsystem_kernel.dylib + 9958) [0x7fff6cd176e6]
                          1   <Frontmost App>
        3   ??? (libtorrent-rasterbar.10.dylib + 271838) [0x10fda35de]
          3   ??? (libtorrent-rasterbar.10.dylib + 271636) [0x10fda3514]
            3   std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18 (libc++.1.dylib + 31786) [0x7fff69cedc2a]
              2   __psynch_cvwait + 10 (libsystem_kernel.dylib + 15590) [0x7fff6cd18ce6]
              1   _pthread_cond_wait + 391 (libsystem_pthread.dylib + 24655) [0x7fff6cdda04f]
                1   <User mode>
      1   boost_asio_detail_posix_thread_function + 16 (libtorrent-rasterbar.10.dylib + 125785) [0x10fd7fb59]
        1   ??? (libtorrent-rasterbar.10.dylib + 728690) [0x10fe12e72]
          1   ??? (libtorrent-rasterbar.10.dylib + 126142) [0x10fd7fcbe]
            1   ??? (libtorrent-rasterbar.10.dylib + 946365) [0x10fe480bd]
              1   ??? (libtorrent-rasterbar.10.dylib + 1214210) [0x10fe89702]
                1   ??? (libtorrent-rasterbar.10.dylib + 472708) [0x10fdd4684]
                  1   getaddrinfo + 61 (libsystem_info.dylib + 35757) [0x7fff6cccfbad]
                    1   _getaddrinfo_internal + 231 (libsystem_info.dylib + 36007) [0x7fff6cccfca7]
                      1   si_addrinfo + 1927 (libsystem_info.dylib + 38231) [0x7fff6ccd0557]
                        1   _gai_nat64_second_pass + 512 (libsystem_info.dylib + 191568) [0x7fff6ccf5c50]
                          1   _gai_nat64_v4_address_requires_synthesis + 67 (libsystem_info.dylib + 194659) [0x7fff6ccf6863]
                            1   nw_nat64_v4_address_requires_synthesis + 214 (libnetwork.dylib + 3257910) [0x7fff6b65b636]
                              1   nw_path_create_evaluator_for_endpoint + 759 (libnetwork.dylib + 126551) [0x7fff6b35ee57]
                                1   necp_client_action + 10 (libsystem_kernel.dylib + 17626) [0x7fff6cd194da]
                                  1   <Frontmost App>
  6   start + 1 (libdyld.dylib + 108541) [0x7fff6cbd57fd]
    5   main + 1176 (qbittorrent + 89656) [0x10f53fe38]
      5   Application::exec(QStringList const&) + 1162 (qbittorrent + 49210) [0x10f53603a]
        5   QCoreApplication::exec() + 116 (QtCore + 1541632) [0x110fc0600]
          5   QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 401 (QtCore + 1521425) [0x110fbb711]
            5   ??? (libqcocoa.dylib + 190841) [0x112fa0979]
              5   -[NSApplication run] + 658 (AppKit + 200862) [0x7fff3287f09e]
                5   -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1352 (AppKit + 258944) [0x7fff3288d380]
                  5   _DPSNextEvent + 990 (AppKit + 265124) [0x7fff3288eba4]
                    5   _BlockUntilNextEventMatchingListInModeWithFilter + 64 (HIToolbox + 192807) [0x7fff3421e127]
                      4   ReceiveNextEventCommon + 600 (HIToolbox + 193437) [0x7fff3421e39d]
                        3   RunCurrentEventLoopInMode + 292 (HIToolbox + 194141) [0x7fff3421e65d]
                          3   CFRunLoopRunSpecific + 499 (CoreFoundation + 535507) [0x7fff356c8bd3]
                            2   __CFRunLoopRun + 1272 (CoreFoundation + 538432) [0x7fff356c9740]
                              2   __CFRunLoopDoSources0 + 209 (CoreFoundation + 542932) [0x7fff356ca8d4]
                                2   __CFRunLoopDoSource0 + 103 (CoreFoundation + 543424) [0x7fff356caac0]
                                  2   __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 (CoreFoundation + 543521) [0x7fff356cab21]
                                    2   ??? (libqcocoa.dylib + 195029) [0x112fa19d5]
                                      2   ??? (libqcocoa.dylib + 193789) [0x112fa14fd]
                                        2   QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 426 (QtCore + 1542476) [0x110fc094c]
                                          2   QCoreApplication::notifyInternal2(QObject*, QEvent*) + 178 (QtCore + 1541162) [0x110fc042a]
                                            2   QApplication::notify(QObject*, QEvent*) + 615 (QtWidgets + 52583) [0x1103ced67]
                                              2   QApplicationPrivate::notify_helper(QObject*, QEvent*) + 311 (QtWidgets + 62949) [0x1103d15e5]
                                                2   QWidget::event(QEvent*) + 2342 (QtWidgets + 242392) [0x1103fd2d8]
                                                  2   ??? (QtWidgets + 91121) [0x1103d83f1]
                                                    2   QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) + 2436 (QtWidgets + 221344) [0x1103f80a0]
                                                      2   QWidgetPrivate::sendPaintEvent(QRegion const&) + 43 (QtWidgets + 223367) [0x1103f8887]
                                                        2   QCoreApplication::notifyInternal2(QObject*, QEvent*) + 178 (QtCore + 1541162) [0x110fc042a]
                                                          2   QApplication::notify(QObject*, QEvent*) + 615 (QtWidgets + 52583) [0x1103ced67]
                                                            2   QApplicationPrivate::notify_helper(QObject*, QEvent*) + 291 (QtWidgets + 62929) [0x1103d15d1]
                                                              2   QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) + 143 (QtCore + 1525393) [0x110fbc691]
                                                                2   QTreeView::viewportEvent(QEvent*) + 516 (QtWidgets + 2456774) [0x110619cc6]
                                                                  2   QAbstractItemView::viewportEvent(QEvent*) + 1318 (QtWidgets + 2117674) [0x1105c702a]
                                                                    2   QFrame::event(QEvent*) + 45 (QtWidgets + 806895) [0x110486fef]
                                                                      2   QWidget::event(QEvent*) + 1792 (QtWidgets + 241842) [0x1103fd0b2]
                                                                        2   QTreeView::paintEvent(QPaintEvent*) + 300 (QtWidgets + 2456164) [0x110619a64]
                                                                          1   QTreeView::drawTree(QPainter*, QRegion const&) const + 962 (QtWidgets + 2499800) [0x1106244d8]
                                                                            1   QTreeView::drawRow(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const + 3176 (QtWidgets + 2477790) [0x11061eede]
                                                                              1   TransferListDelegate::paint(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const + 1214 (qbittorrent + 1919694) [0x10f6feace]
                                                                                1   QItemDelegate::paint(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const + 1188 (QtWidgets + 2214376) [0x1105de9e8]
                                                                                  1   QItemDelegate::drawDisplay(QPainter*, QStyleOptionViewItem const&, QRect const&, QString const&) const + 1679 (QtWidgets + 2218851) [0x1105dfb63]
                                                                                    1   QTextLayout::draw(QPainter*, QPointF const&, QVector<QTextLayout::FormatRange> const&, QRectF const&) const + 4240 (QtGui + 869850) [0x11098d5da]
                                                                                      1   QTextLine::draw(QPainter*, QPointF const&, QTextLayout::FormatRange const*) const + 323 (QtGui + 870617) [0x11098d8d9]
                                                                                        1   ??? (QtGui + 841313) [0x110986661]
                                                                                          1   QTextEngine::shapeLine(QScriptLine const&) + 299 (QtGui + 788613) [0x110979885]
                                                                                            1   QTextEngine::shapeText(int) const + 1735 (QtGui + 794811) [0x11097b0bb]
                                                                                              1   QTextEngine::shapeTextWithHarfbuzzNG(QScriptItem const&, unsigned short const*, int, QFontEngine*, QVector<unsigned int> const&, bool, bool) const + 2616 (QtGui + 799792) [0x11097c430]
                                                                                                1   ??? (QtGui + 2873453) [0x110b7686d]
                                                                                                  1   ??? (QtGui + 2874316) [0x110b76bcc]
                                                                                                    1   ??? (QtGui + 2954657) [0x110b8a5a1]
                                                                                                      1   ??? (QtGui + 1276255) [0x1109f095f]
                                                                                                        1   ??? (libqcocoa.dylib + 414405) [0x112fd72c5]
                                                                                                          1   ??? (libqcocoa.dylib + 425461) [0x112fd9df5]
                                                                                                            1   CTFontGetAdvancesForGlyphs + 169 (CoreText + 458304) [0x7fff3751be40]
                                                                                                              1   TFont::GetAdvancesForGlyphs(unsigned short const*, CGSize*, long, CTFontOrientation) const + 142 (CoreText + 323006) [0x7fff374fadbe]
                                                                                                                1   TFont::GetUnscaledTrackAmount() const + 532 (CoreText + 111756) [0x7fff374c748c]
                                                                                                                  1   <Frontmost App, User mode, Effective Thread QoS User Interactive, Requested Thread QoS User Interactive>
                                                                          1   QTreeView::drawTree(QPainter*, QRegion const&) const + 927 (QtWidgets + 2499765) [0x1106244b5]
                                                                            1   QTreeView::drawRow(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const + 3176 (QtWidgets + 2477790) [0x11061eede]
                                                                              1   TransferListDelegate::paint(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const + 1214 (qbittorrent + 1919694) [0x10f6feace]
                                                                                1   QItemDelegate::paint(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const + 1188 (QtWidgets + 2214376) [0x1105de9e8]
                                                                                  1   QItemDelegate::drawDisplay(QPainter*, QStyleOptionViewItem const&, QRect const&, QString const&) const + 1679 (QtWidgets + 2218851) [0x1105dfb63]
                                                                                    1   QTextLayout::draw(QPainter*, QPointF const&, QVector<QTextLayout::FormatRange> const&, QRectF const&) const + 4240 (QtGui + 869850) [0x11098d5da]
                                                                                      1   QTextLine::draw(QPainter*, QPointF const&, QTextLayout::FormatRange const*) const + 3199 (QtGui + 873493) [0x11098e415]
                                                                                        1   ??? (QtGui + 1938909) [0x110a925dd]
                                                                                          1   QRasterPaintEngine::drawTextItem(QPointF const&, QTextItem const&) + 346 (QtGui + 1820956) [0x110a7591c]
                                                                                            1   QRasterPaintEngine::drawCachedGlyphs(int, unsigned int const*, QFixedPoint const*, QFontEngine*) + 900 (QtGui + 1847588) [0x110a7c124]
                                                                                              1   QTextureGlyphCache::populate(QFontEngine*, int, unsigned int const*, QFixedPoint const*) + 279 (QtGui + 2189151) [0x110acf75f]
                                                                                                1   QFontEngine::subPixelPositionForX(QFixed) const + 65 (QtGui + 688127) [0x110960fff]
                                                                                                  1   <Frontmost App, Effective Thread QoS User Interactive, Requested Thread QoS User Interactive>
                            1   __CFRunLoopRun + 1219 (CoreFoundation + 538379) [0x7fff356c970b]
                              1   __CFRunLoopDoObservers + 457 (CoreFoundation + 540692) [0x7fff356ca014]
                                1   __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 (CoreFoundation + 540910) [0x7fff356ca0ee]
                                  1   ___NSRunLoopObserverCreateWithHandler_block_invoke + 41 (AppKit + 9426525) [0x7fff3314b65d]
                                    1   __62+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayLink]_block_invoke + 724 (AppKit + 1973617) [0x7fff32a2fd71]
                                      1   CFRunLoopObserverInvalidate + 232 (CoreFoundation + 541149) [0x7fff356ca1dd]
                                        1   CFRunLoopRemoveObserver + 106 (CoreFoundation + 541539) [0x7fff356ca363]
                                          1   __CFRunLoopFindMode + 174 (CoreFoundation + 292625) [0x7fff3568d711]
                                            1   CFSetGetValue + 80 (CoreFoundation + 293598) [0x7fff3568dade]
                                              1   __CFStringHash + 184 (CoreFoundation + 38744) [0x7fff3564f758]
                                                1   <Frontmost App, User mode, Effective Thread QoS User Interactive, Requested Thread QoS User Interactive>
                        1   RunCurrentEventLoopInMode + 92 (HIToolbox + 193941) [0x7fff3421e595]
                          1   <Frontmost App, User mode, Effective Thread QoS User Interactive, Requested Thread QoS User Interactive>
                      1   ReceiveNextEventCommon + 356 (HIToolbox + 193193) [0x7fff3421e2a9]
                        1   RunCurrentEventLoopInMode + 292 (HIToolbox + 194141) [0x7fff3421e65d]
                          1   CFRunLoopRunSpecific + 499 (CoreFoundation + 535507) [0x7fff356c8bd3]
                            1   __CFRunLoopRun + 1272 (CoreFoundation + 538432) [0x7fff356c9740]
                              1   __CFRunLoopDoSources0 + 209 (CoreFoundation + 542932) [0x7fff356ca8d4]
                                1   __CFRunLoopDoSource0 + 103 (CoreFoundation + 543424) [0x7fff356caac0]
                                  1   __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 (CoreFoundation + 543521) [0x7fff356cab21]
                                    1   ??? (libqcocoa.dylib + 195029) [0x112fa19d5]
                                      1   ??? (libqcocoa.dylib + 193789) [0x112fa14fd]
                                        1   QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 426 (QtCore + 1542476) [0x110fc094c]
                                          1   QCoreApplication::notifyInternal2(QObject*, QEvent*) + 178 (QtCore + 1541162) [0x110fc042a]
                                            1   QApplication::notify(QObject*, QEvent*) + 615 (QtWidgets + 52583) [0x1103ced67]
                                              1   QApplicationPrivate::notify_helper(QObject*, QEvent*) + 311 (QtWidgets + 62949) [0x1103d15e5]
                                                1   QWidget::event(QEvent*) + 2342 (QtWidgets + 242392) [0x1103fd2d8]
                                                  1   ??? (QtWidgets + 91257) [0x1103d8479]
                                                    1   ??? (QtWidgets + 92441) [0x1103d8919]
                                                      1   ??? (QtWidgets + 94549) [0x1103d9155]
                                                        1   QBackingStore::flush(QRegion const&, QWindow*, QPoint const&) + 1141 (QtGui + 1389743) [0x110a0c4af]
                                                          1   ??? (libqcocoa.dylib + 75855) [0x112f8484f]
                                                            1   ??? (libqcocoa.dylib + 84792) [0x112f86b38]
                                                              1   QPainter::drawImage(QRectF const&, QImage const&, QRectF const&, QFlags<Qt::ImageConversionFlag>) + 554 (QtGui + 1928484) [0x110a8fd24]
                                                                1   QRasterPaintEngine::drawImage(QRectF const&, QImage const&, QRectF const&, QFlags<Qt::ImageConversionFlag>) + 4324 (QtGui + 1827898) [0x110a7743a]
                                                                  1   ??? (QtGui + 1870554) [0x110a81ada]
                                                                    1   _platform_memmove$VARIANT$Haswell + 41 (libsystem_platform.dylib + 5993) [0x7fff6cdcb769]
                                                                      1   <Effective Thread QoS User Interactive, Requested Thread QoS User Interactive>
    1   main + 263 (qbittorrent + 88743) [0x10f53faa7]
      1   Application::Application(QString const&, int&, char**) + 45 (qbittorrent + 31613) [0x10f531b7d]
        1   QApplicationPrivate::init() + 26 (QtWidgets + 68564) [0x1103d2bd4]
          1   QGuiApplicationPrivate::init() + 43 (QtGui + 158085) [0x1108df985]
            1   QCoreApplicationPrivate::init() + 736 (QtCore + 1537582) [0x110fbf62e]
              1   QGuiApplicationPrivate::createEventDispatcher() + 27 (QtGui + 148551) [0x1108dd447]
                1   QGuiApplicationPrivate::createPlatformIntegration() + 2412 (QtGui + 153462) [0x1108de776]
                  1   QPlatformIntegrationFactory::create(QString const&, QStringList const&, int&, char**, QString const&) + 97 (QtGui + 116973) [0x1108d58ed]
                    1   ??? (QtGui + 117344) [0x1108d5a60]
                      1   ??? (libqcocoa.dylib + 37516) [0x112f7b28c]
                        1   ??? (libqcocoa.dylib + 54322) [0x112f7f432]
                          1   ??? (libqcocoa.dylib + 55298) [0x112f7f802]
                            1   ??? (libqcocoa.dylib + 58565) [0x112f804c5]
                              1   _IODisplayCreateInfoDictionary + 5348 (IOKit + 103107) [0x7fff384642c3]
                                1   CFArrayApplyFunction + 62 (CoreFoundation + 286939) [0x7fff3568c0db]
                                  1   MakeOneLocalization + 58 (IOKit + 97476) [0x7fff38462cc4]
                                    1   CFBundleCopyResourceURLForLocalization + 35 (CoreFoundation + 879795) [0x7fff3571ccb3]
                                      1   _CFBundleCopyFindResources + 1399 (CoreFoundation + 322568) [0x7fff35694c08]
                                        1   _copyResourceURLsFromBundle + 361 (CoreFoundation + 325468) [0x7fff3569575c]
                                          1   _copyQueryTable + 50 (CoreFoundation + 327114) [0x7fff35695dca]
                                            1   _CFBundleCopyLanguageSearchListInBundle + 84 (CoreFoundation + 327587) [0x7fff35695fa3]
                                              1   _CFBundleCopyPreferredLanguagesInList + 849 (CoreFoundation + 266462) [0x7fff356870de]
                                                1   _CFBundleCreateMutableArrayOfFallbackLanguages + 275 (CoreFoundation + 267075) [0x7fff35687343]
                                                  1   ualoc_localizationsToUse + 3524 (libicucore.A.dylib + 264094) [0x7fff6a90479e]
                                                    1   uloc_minimizeSubtags + 66 (libicucore.A.dylib + 100725) [0x7fff6a8dc975]
                                                      1   ulocimp_minimizeSubtags + 494 (libicucore.A.dylib + 101299) [0x7fff6a8dcbb3]
                                                        1   ulocimp_addLikelySubtags + 372 (libicucore.A.dylib + 100608) [0x7fff6a8dc900]
                                                          1   ??? (libicucore.A.dylib + 104485) [0x7fff6a8dd825]
                                                            1   ??? (libicucore.A.dylib + 105321) [0x7fff6a8ddb69]
                                                              1   free + 107 (libsystem_malloc.dylib + 7180) [0x7fff6cd8bc0c]
                                                                1   nanov2_pointer_size + 389 (libsystem_malloc.dylib + 7979) [0x7fff6cd8bf2b]
                                                                  1   <Frontmost App, Effective Thread QoS User Interactive, Requested Thread QoS User Interactive>

  Binary Images:
           0x10f52a000 -        0x10fc4cfff  org.qbittorrent.qBittorrent 4.2.1 (0)       <977685FD-606F-38BF-9AFD-CC1CE05966EE>  /Applications/qBittorrent.app/Contents/MacOS/qbittorrent
           0x10fd61000 -        0x110066fff  libtorrent-rasterbar.10.dylib (0)           <435C2C04-2640-3369-B6F1-9759142FAD71>  /Applications/qBittorrent.app/Contents/Frameworks/libtorrent-rasterbar.10.dylib
           0x1103c2000 -        0x110745fff  org.qt-project.QtWidgets 5.13 (5.13.2)      <11F93046-4840-3E5E-8EA8-4C9D0B775563>  /Applications/qBittorrent.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets
           0x1108b9000 -        0x110be7fff  org.qt-project.QtGui 5.13 (5.13.2)          <5FF7418E-C12E-36CF-9850-413B303397D2>  /Applications/qBittorrent.app/Contents/Frameworks/QtGui.framework/Versions/5/QtGui
           0x110e48000 -        0x111290fff  org.qt-project.QtCore 5.13 (5.13.2)         <BAF121EB-1E99-35C4-9C1D-D1A8FA67F855>  /Applications/qBittorrent.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore
           0x112f72000 -        0x113088fff  libqcocoa.dylib (0)                         <37AAFF76-271D-319E-A067-16BF72615505>  /Applications/qBittorrent.app/Contents/PlugIns/platforms/libqcocoa.dylib
        0x7fff3284e000 -     0x7fff33609fff  com.apple.AppKit 6.9 (1894.30.142)          <5A1752C0-67F4-3EDF-97DA-81AB42824B7B>  /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
        0x7fff341ef000 -     0x7fff344e3fff  com.apple.HIToolbox 2.1.1 (994)             <03BF3899-5DD5-3C1F-9DC6-B4C71CD656B6>  /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
        0x7fff35646000 -     0x7fff35ac6fff  com.apple.CoreFoundation 6.9 (1674.114)     <5810CC45-FB5D-3A78-861F-7BE03F9B2FDD>  /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
        0x7fff374ac000 -     0x7fff37660fff  com.apple.CoreText 643.1.2.3 (643.1.2.3)    <D955D513-DC79-33A9-9E17-C8D86884DED1>  /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText
        0x7fff3844b000 -     0x7fff384eefff  com.apple.framework.IOKit 2.0.2 (1726.80.1) <B63FE840-8E32-3429-A95D-AB466FE62104>  /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
        0x7fff69ce6000 -     0x7fff69d39fff  libc++.1.dylib (800.7)                      <1D0CB627-8A78-329F-A679-1B5248FF4C59>  /usr/lib/libc++.1.dylib
        0x7fff6a8c4000 -     0x7fff6ab1cfff  libicucore.A.dylib (64252.0.1)              <0F9294A7-6EC0-3279-BF92-3233C89DFA0A>  /usr/lib/libicucore.A.dylib
        0x7fff6b340000 -     0x7fff6b7b6fff  libnetwork.dylib (1880.60.5)                <8B4092C3-9F1C-34C3-A73D-A2228C345831>  /usr/lib/libnetwork.dylib
        0x7fff6cbbb000 -     0x7fff6cbf0fff  libdyld.dylib (733.8)                       <8B0DFE8A-42CF-32C8-B121-83C22BF25F69>  /usr/lib/system/libdyld.dylib
        0x7fff6ccc7000 -     0x7fff6cd14fff  libsystem_info.dylib (538)                  <B0EBAE05-01AD-3D8E-92CC-5704394FF94A>  /usr/lib/system/libsystem_info.dylib
        0x7fff6cd15000 -     0x7fff6cd41fff  libsystem_kernel.dylib (6153.81.5)          <23909F45-79C3-34C9-A28F-337915925E5E>  /usr/lib/system/libsystem_kernel.dylib
        0x7fff6cd8a000 -     0x7fff6cdb1fff  libsystem_malloc.dylib (283.60.1)           <00190446-C6A8-3EA6-92D1-850EA85C84CE>  /usr/lib/system/libsystem_malloc.dylib
        0x7fff6cdca000 -     0x7fff6cdd3fff  libsystem_platform.dylib (220)              <3DAFCC01-B768-3FFC-AC59-47AAE86BBEA1>  /usr/lib/system/libsystem_platform.dylib
        0x7fff6cdd4000 -     0x7fff6cddefff  libsystem_pthread.dylib (416.60.2)          <AAF506F4-9455-3CC4-8E0B-6791E3C0993C>  /usr/lib/system/libsystem_pthread.dylib
imkaihao commented 4 years ago

Same problem here with qBittorrent 4.2.3 and macOS Catalina 10.15.4

ghost commented 2 years ago

Issue was reported on a very old version. If anyone still experiencing this please comment to reopen or create a new ticket.

briankendall commented 1 year ago

Commenting because me and a friend still experience this issue with recent versions of qBittorrent. We were just discussing it and how incredibly annoying it is, since it takes down our home server every time it happens, and I decided to see if I could find a bug report here for this issue. Would someone please re-open it?

We're running version 4.4.5. (Haven't updated to 4.5.0 just yet.) We trigger it under essentially the same circumstances that @kquinsland says: multiple torrents downloading at high speeds.

The only additional information I can offer is that limiting the number of simultaneous connections that qBittorrent makes seems to mitigate -- but not solve -- the issue. Currently I have qBittorrent set to only download one torrent at a time with 20 max connections per torrent, which has been pretty stable. But every now and then I'll do something like force-start a few extra torrents, and sometimes that takes my whole system down!

(I wonder if this is an underlying issue in libtorrent?)

briankendall commented 1 year ago

I can reproduce this issue very, very reliably using a virtual machine. In the latest qBittorrent I tried queuing up fourteen Linux ISO torrents, selected for being several gigabytes in size and having many seeds. I have a gigabit fiber internet connection, so my download speeds can easily reach 60-70 MB/s. If I set qBittorrent's connection limit to be 50 connections per torrent and 500 connections globally, queue up these torrents, and then start them all simultaneously, then the entire system will crash within about ten seconds!

The crash happens easily in Mojave and Catalina. However, I can't get it to happen in Big Sur. My thoughts are that this is a bug in macOS that gets triggered by there being lots of network connections all with high throughput. Somehow the connections get into a degenerate state where they lock up and prevent the process from quitting, and then any process that tries to establish a new network connection will lock up as well. Apple may have fixed it in Big Sur.

In any case, it seems unlikely that the root cause of this bug is in qBittorrent. Maybe it's in libtorrent somehow. But if it is fixed in Big Sur then there's probably not much to be done about it.

For those of us (like me) who are still using earlier versions of macOS, I recommend setting the max number of global connections to somewhere between 100-200 to avoid this crash. I'm not 100% sure that prevents it from happening completely, but so far I've had good luck with those numbers.

xavier2k6 commented 1 year ago

@briankendall I'm going to re-open this....can ty provide any crash report, analytic data etc.?

kquinsland commented 1 year ago

I can reproduce this issue very, very reliably using a virtual machine. In the latest qBittorrent I tried queuing up fourteen Linux ISO torrents, selected for being several gigabytes in size and having many seeds. I have a gigabit fiber internet connection, so my download speeds can easily reach 60-70 MB/s. If I set qBittorrent's connection limit to be 50 connections per torrent and 500 connections globally, queue up these torrents, and then start them all simultaneously, then the entire system will crash within about ten seconds!

It's been a few years since I was a macOS user, but this more or less matches my experience.

The crash happens easily in Mojave and Catalina. However, I can't get it to happen in Big Sur. My thoughts are that this is a bug in macOS that gets triggered by there being lots of network connections all with high throughput. Somehow the connections get into a degenerate state where they lock up and prevent the process from quitting, and then any process that tries to establish a new network connection will lock up as well. Apple may have fixed it in Big Sur.

In any case, it seems unlikely that the root cause of this bug is in qBittorrent. Maybe it's in libtorrent somehow. But if it is fixed in Big Sur then there's probably not much to be done about it.

I never was able to prove it but did suspect this might be the case! Some of the system behaviors that would present just before the hard crash included gimped file and network IO in other programs. E.G.: switching over to an old chrome tab that had since been suspended or doing a file copy across the network.

If there was a problem in libtorrent or similar, it would be hard to explain how that would effect chrome as well unless there was a problem in something they both share; the net/file IO from the OS.

I am happy to see that the issue isn't present (for you) in macOS 11.x branches and - assuming you're using the same version of qBittorrent/libtorrentin each of the VMs - is another data point pointing at something in macOS.

briankendall commented 1 year ago

@briankendall I'm going to re-open this....can ty provide any crash report, analytic data etc.?

This is quite hard to do, because the entire system starts locking up once the crash happens. Not every process stops working, but most do. I think it affects any of those that try to open a socket, but that's just a guess.

I might be able to produce a sample of qBittorrent, if I can get it to complete. Is there anything else about the system state that might be useful?

briankendall commented 1 year ago

@xavier2k6 I managed to get a sample of qBittorrent when the crash has occurred. There's no debugging info in the app though so someone would have to symbolicate it.

qbt-5s-sample.txt