Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FileDialog hangup in KDE #3807

Closed
shimpe opened this issue Jun 23, 2018 · 34 comments
Closed

FileDialog hangup in KDE #3807

shimpe opened this issue Jun 23, 2018 · 34 comments
Labels
bug Issues that relate to unexpected/unwanted behavior. Don't use for PRs. comp: sclang sclang C++ implementation (primitives, etc.). for changes to class lib use "comp: class library" crash things which cause a crash in the interpreter, servers, or IDE. do not use for PRs os: Linux
Milestone

Comments

@shimpe
Copy link
Contributor

shimpe commented Jun 23, 2018

I have no idea how to go about debugging this. The following code often just works, and then suddenly it simply hangs up (just keep clicking load-cancel-load-cancel-etc). Sometimes it freezes immediately, sometimes it takes about 20-30 open-cancel cycles (never more until now). When it freezes, there's no known way of recovering other than killing the interpreter.

The problem is particularly annoying because it can lead to data loss (this dialog is typically used in save buttons too). Looking through google, hangups with file dialogs may be related to using "native file dialogs" (which, I think, is some flag available only in C++).

I'm working on a KDE (kde plasma 5.13.1, kde framework 5.47.0, qt 5.11.1, 16Gb RAM, 64bit Os, 8xIntel Core i7-4910MQ CPU @ 2.90 GHz) linux environment (arch linux - kernel 4.17.2-1-ARCH #1 SMP PREEMPT Sat Jun 16 11:08:59 UTC 2018 x86_64 GNU/Linux), with supercollider built from source (sha1 3c49a4f).

The following code can be used to reproduce the hangup on my system. The most efficient way of opening and closing the dialog several times I found so far is to just left mouse click the load button, then type alt-C to cancel.

(s.waitForBoot({

	w = Window.new("test", Rect(0,0,400,400));
	w.layout_(HLayout(
		Button().string_("Load").action_({
			| button |
			var filename = FileDialog.new(
				okFunc:{ "Ok".postln; },
				cancelFunc: { "Cancel".postln; },
				fileMode:1,
				acceptMode:0,
				stripResult:false,
				path:Platform.userHomeDir
			);
		});
	));
	w.front;
});
)
@shimpe
Copy link
Contributor Author

shimpe commented Jun 23, 2018

(having some trouble with code formatting...)

@nhthn nhthn added bug Issues that relate to unexpected/unwanted behavior. Don't use for PRs. comp: sclang sclang C++ implementation (primitives, etc.). for changes to class lib use "comp: class library" crash things which cause a crash in the interpreter, servers, or IDE. do not use for PRs labels Jun 23, 2018
@nhthn
Copy link
Contributor

nhthn commented Jun 23, 2018

cannot reproduce on ubuntu + xfce. does this more minimal reproducer also work? (server is not booted, no GUI running)

(
var go;
go = {
    FileDialog.new(
        okFunc: { },
        cancelFunc: go,
        fileMode: 1,
        acceptMode: 0,
        stripResult: false,
        path: Platform.userHomeDir
    );
};
go.value;
)

@shimpe
Copy link
Contributor Author

shimpe commented Jun 23, 2018

After some trial and error: the more minimal version appears to be more difficult to make hang, but it hangs pretty much every time if I paste it in and run it immediately after starting scide, while docs are still being indexed. At that moment also indexing of the docs never completes (or maybe it's just the post window that hangs as well)

@nhthn
Copy link
Contributor

nhthn commented Jun 23, 2018

immediately after booting the IDE, or immediately after rebooting the interpreter?

@shimpe
Copy link
Contributor Author

shimpe commented Jun 23, 2018

immediately after booting the IDE

@nhthn
Copy link
Contributor

nhthn commented Jun 23, 2018

let's see if we can isolate the differences between the two code snippets. can you try A) the original code without the server booted, and B) the minimal code with the server booted?

@shimpe
Copy link
Contributor Author

shimpe commented Jun 23, 2018

A) doesn't hang up
B) no controls show up: immediate freeze in the following code snippet:

(
s.waitForBoot({
	var go;
	go = {
		FileDialog.new(
			okFunc: { },
			cancelFunc: go,
			fileMode: 1,
			acceptMode: 0,
			stripResult: false,
			path: Platform.userHomeDir
		);
	};
	go.value;
});
)

@shimpe
Copy link
Contributor Author

shimpe commented Jun 23, 2018

If I wait for a while after booting the server manually (to exclude some race condition during startup), the minimal code fragment takes about 20-30 times canceling to hang up.

@nhthn nhthn added this to the 3.10 milestone Jun 24, 2018
@nhthn
Copy link
Contributor

nhthn commented Jun 24, 2018

got two possible fixes here, branches filedialog-1 and filedialog-2. can you try each one?

https://github.com/supercollider/supercollider/tree/topic/filedialog-1

https://github.com/supercollider/supercollider/tree/topic/filedialog-2

@shimpe
Copy link
Contributor Author

shimpe commented Jun 24, 2018

filedialog-1 doesn't seem to contain any commit - forgot to push?

@nhthn
Copy link
Contributor

nhthn commented Jun 24, 2018

oops, pushed

@shimpe
Copy link
Contributor Author

shimpe commented Jun 24, 2018

unfortunately both versions still can freeze with the server booted (second version faster than the first version it seems)

@shimpe
Copy link
Contributor Author

shimpe commented Jun 24, 2018

However, with both patches applied simultaneously, I haven't been able to make it freeze yet. I'll keep trying ;)

@shimpe
Copy link
Contributor Author

shimpe commented Jun 24, 2018

Meh... now it hung up after 64 "cancels". It seems to take longer to freeze than before, but it doesn't seem to be completely solved yet.

@nhthn
Copy link
Contributor

nhthn commented Jun 24, 2018

here are some of the resources i found that might help us attack this:

according to the KDE issue tracker link, this bug has been fixed in KDE.

from the last link:

It's not really hung, there's just an invisible modal dialog open. You can still dismiss it by pressing ESC

can you try that?

@nhthn nhthn changed the title FileDialog hangup FileDialog hangup in KDE Jun 24, 2018
@shimpe
Copy link
Contributor Author

shimpe commented Jun 25, 2018

pressing ESC doesn't help - it remains frozen

@nhthn
Copy link
Contributor

nhthn commented Jun 27, 2018

i suspect this is upstream. next thing to try is to see if we can make a minimal reproducer without using SC.

please create a new directory, asdf/, and put the following in main.cpp:

#include <iostream>
#include <QApplication>
#include <QFileDialog>

int main(int argc, char* argv[]) {
    QApplication app(argc, argv);
    int i = 0;
    while (true) {
        QFileDialog dialog;
        dialog.exec();
        i++;
        std::cout << i << std::endl;
    }
    return 0;
}

and the following in asdf.pro:

SOURCES += main.cpp
QT += widgets

then run qmake -o Makefile asdf.pro, then make, then ./asdf. this will just keep opening up QFileDialogs.

@shimpe
Copy link
Contributor Author

shimpe commented Jun 27, 2018

I just canceled that dialog 500 times without any hangup

image

@shimpe
Copy link
Contributor Author

shimpe commented Jun 27, 2018

To be honest, scide's own file dialogs never ever froze on me before (and I've been a fairly regular user of scide for the better part of the past 2 years) so forgive me for sounding perhaps somewhat sceptical about the upstream hypothesis. Is there anyway I can "break into" the frozen process and force it to dump a stack trace e.g. ?

@miguel-negrao
Copy link
Member

Is there anyway I can "break into" the frozen process and force it to dump a stack trace e.g. ?

I think you can use gdb for that. check the documentation for attaching to a process by pid number. then you can type 'bt' to get a back trrace. The build must have debug symbols.

@shimpe
Copy link
Contributor Author

shimpe commented Jun 28, 2018

Ok I made a debug build, then attached gdb and asked for a backtrace:

#0  0x00007f79cf3f429c in __lll_lock_wait () from /usr/lib/libpthread.so.0
#1  0x00007f79cf3ed7c4 in pthread_mutex_lock () from /usr/lib/libpthread.so.0
#2  0x000056246de1a907 in __gthread_mutex_lock (__mutex=0x56246e4f2da0 <gLangMutex>) at /usr/include/c++/8.1.1/x86_64-pc-linux-gnu/bits/gthr-default.h:748
#3  0x000056246de1ea82 in std::timed_mutex::lock (this=0x56246e4f2da0 <gLangMutex>) at /usr/include/c++/8.1.1/mutex:192
#4  0x000056246df99054 in SC_LanguageClient::lock (this=0x56246fa78bd0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_LanguageClient.cpp:323
#5  0x000056246de18d29 in QtCollider::LangClient::tick (this=0x56246fa78bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:100
#6  0x000056246de18f8f in QtCollider::LangClient::timerEvent (this=0x56246fa78bc0, e=0x7ffdf4a88600) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:119
#7  0x00007f79c58d238b in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007f79c661ba74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#9  0x00007f79c6623341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#10 0x000056246e0109f5 in QcApplication::notify (this=0x56246fa3bf10, object=0x56246fa78bc0, event=0x7ffdf4a88600) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#11 0x00007f79c58a7cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007f79c58fa40a in QTimerInfoList::activateTimers() () from /usr/lib/libQt5Core.so.5
#13 0x00007f79c58fac92 in ?? () from /usr/lib/libQt5Core.so.5
#14 0x00007f79c28a9368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#15 0x00007f79c28a95b1 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007f79c28a963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#17 0x00007f79c58fb039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#18 0x00007f79ae71d722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#19 0x00007f79c58a694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#20 0x00007f79a847aad7 in KJob::exec() () from /usr/lib/libKF5CoreAddons.so.5
#21 0x00007f79aada9e68 in KFileWidget::KFileWidget(QUrl const&, QWidget*) () from /usr/lib/libKF5KIOFileWidgets.so.5
#22 0x00007f79ab27c176 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#23 0x00007f79ab27c837 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#24 0x00007f79ab27182e in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#25 0x00007f79c681027e in QDialogPrivate::platformHelper() const () from /usr/lib/libQt5Widgets.so.5
#26 0x00007f79c6822a2d in QFileDialogPrivate::init(QUrl const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#27 0x00007f79c6822e52 in QFileDialog::QFileDialog(QWidget*, QString const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#28 0x000056246e05ec3d in QcFileDialog::QcFileDialog (this=0x5624700d0060, fileMode=1, acceptMode=0, startDir=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/QcFileDialog.cpp:28
#29 0x000056246e078f7f in QcFileDialog::qt_static_metacall (_o=0x0, _c=QMetaObject::CreateInstance, _id=0, _a=0x7ffdf4a88dd0) at /home/shimpe/development/supercollider/build/lang/__/QtCollider/widgets/moc_QcFileDialog.cpp:101
#30 0x00007f79c58b1019 in QMetaObject::static_metacall(QMetaObject::Call, int, void**) const () from /usr/lib/libQt5Core.so.5
#31 0x00007f79c58b756d in QMetaObject::newInstance(QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () from /usr/lib/libQt5Core.so.5
#32 0x000056246e05f7cd in QcObjectFactory<QcFileDialog>::newInstance (this=0x56246f9abc90, scObject=0x562479294328, arg=0x7ffdf4a892f0) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/../QcObjectFactory.h:87
#33 0x000056246dfb4738 in QtCollider::LangPrimitive<QtCollider::QObject_New>::implementation (r=0x562471a548a8, a=0x562471a548b8, g=0x56246e511860 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:104
#34 0x000056246dfbb501 in QtCollider::LangPrimitive<QtCollider::QObject_New>::mediate (g=0x56246e511860 <gVMGlobals>, i=3) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:61
#35 0x000056246de2dae1 in doPrimitive (g=0x56246e511860 <gVMGlobals>, meth=0x562472233840, numArgsPushed=3) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrPrimitive.cpp:3837
#36 0x000056246df35574 in Interpret (g=0x56246e511860 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:2641
#37 0x000056246df2455c in runInterpreter (g=0x56246e511860 <gVMGlobals>, selector=0x56247228d918, numArgsPushed=2) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:127
#38 0x000056246e010ecf in QtCollider::runLang (receiver=0x56247928b4f8, method=0x56247228d918, args=..., result=0x0) at /home/shimpe/development/supercollider/supercollider/QtCollider/Common.cpp:46
#39 0x000056246e012ece in QObjectProxy::invokeScMethod (this=0x56247010c0e0, method=0x56247228d918, args=..., result=0x0, locked=false) at /home/shimpe/development/supercollider/supercollider/QtCollider/QObjectProxy.cpp:237
#40 0x000056246e016a4c in QcMethodSignalHandler::react (this=0x562470126d70, args=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:146
#41 0x000056246e0166a2 in QcSignalSpy::qt_metacall (this=0x562470126d70, call=QMetaObject::InvokeMetaMethod, methodId=0, argData=0x7f79a400a450) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:104
#42 0x00007f79c58d23d2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#43 0x00007f79c661ba74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#44 0x00007f79c6623341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#45 0x000056246e0109f5 in QcApplication::notify (this=0x56246fa3bf10, object=0x562470126d70, event=0x5624700df760) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#46 0x00007f79c58a7cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#47 0x00007f79c58aad4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#48 0x00007f79c58fba54 in ?? () from /usr/lib/libQt5Core.so.5
#49 0x00007f79c28a9368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#50 0x00007f79c28a95b1 in ?? () from /usr/lib/libglib-2.0.so.0
#51 0x00007f79c28a963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#52 0x00007f79c58fb039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#53 0x00007f79ae71d722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#54 0x00007f79c58a694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#55 0x00007f79c58aec46 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#56 0x000056246de18697 in QtCollider::LangClient::commandLoop (this=0x56246fa78bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:44
#57 0x000056246ddff6a4 in SC_TerminalClient::run (this=0x56246fa78bd0, argc=0, argv=0x7ffdf4a8a2a0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:284
#58 0x000056246ddfe892 in main (argc=5, argv=0x7ffdf4a8a278) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/cmdLineFuncs.cpp:28

@shimpe
Copy link
Contributor Author

shimpe commented Jun 28, 2018

I guess it's more useful to have a backtrace of all threads in this case...

(gdb) thread apply all bt

Thread 32 (Thread 0x7f792b7fe700 (LWP 7516)):
#0  0x00007f79c2e70934 in read () from /usr/lib/libc.so.6
#1  0x00007f79c2e02788 in __GI__IO_file_underflow () from /usr/lib/libc.so.6
#2  0x00007f79c2e038a2 in __GI__IO_default_uflow () from /usr/lib/libc.so.6
#3  0x00007f79c2df721b in __GI__IO_getline_info () from /usr/lib/libc.so.6
#4  0x00007f79c2df628b in fgets () from /usr/lib/libc.so.6
#5  0x000056246df1abdc in string_popen_thread_func (process=0x7f78ec00ce60) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrUnixPrim.cpp:125
#6  0x000056246df1dbb0 in std::__invoke_impl<void, void (*&)(sc_process*), sc_process*&> (__f=@0x7f78ec004bf8: 0x56246df1ab80 <string_popen_thread_func(sc_process*)>, __args#0=@0x7f78ec004c00: 0x7f78ec00ce60) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x000056246df1d952 in std::__invoke<void (*&)(sc_process*), sc_process*&> (__fn=@0x7f78ec004bf8: 0x56246df1ab80 <string_popen_thread_func(sc_process*)>, __args#0=@0x7f78ec004c00: 0x7f78ec00ce60) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000056246df1d45a in std::_Bind<void (*(sc_process*))(sc_process*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x7f78ec004bf8, __args=...) at /usr/include/c++/8.1.1/functional:400
#9  0x000056246df1ccbf in std::_Bind<void (*(sc_process*))(sc_process*)>::operator()<, void>() (this=0x7f78ec004bf8) at /usr/include/c++/8.1.1/functional:484
#10 0x000056246df1c79e in std::__invoke_impl<void, std::_Bind<void (*(sc_process*))(sc_process*)>>(std::__invoke_other, std::_Bind<void (*(sc_process*))(sc_process*)>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#11 0x000056246df1c232 in std::__invoke<std::_Bind<void (*(sc_process*))(sc_process*)>>(std::_Bind<void (*(sc_process*))(sc_process*)>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#12 0x000056246df1e150 in std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x7f78ec004bf8) at /usr/include/c++/8.1.1/thread:234
#13 0x000056246df1e110 in std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > >::operator()() (this=0x7f78ec004bf8) at /usr/include/c++/8.1.1/thread:243
#14 0x000056246df1e0e4 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > > >::_M_run() (this=0x7f78ec004bf0) at /usr/include/c++/8.1.1/thread:186
#15 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#16 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#17 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 31 (Thread 0x7f79457fa700 (LWP 7513)):
#0  0x00007f79c2e7f85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x000056246de05891 in boost::asio::detail::epoll_reactor::run (this=0x56246fa5d8e0, usec=-1, ops=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/epoll_reactor.ipp:471
#2  0x000056246de07051 in boost::asio::detail::scheduler::do_run_one (this=0x56246fa7e420, lock=..., this_thread=..., ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:385
#3  0x000056246de06acf in boost::asio::detail::scheduler::run (this=0x56246fa7e420, ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:154
#4  0x000056246de075f3 in boost::asio::io_context::run (this=0x56246fa78c70) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/impl/io_context.ipp:62
#5  0x000056246de0044d in SC_TerminalClient::inputThreadFn (this=0x56246fa78bd0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:639
#6  0x000056246de14789 in std::__invoke_impl<void, void (SC_TerminalClient::*&)(), SC_TerminalClient*&> (__f=@0x56246fa20158: (void (SC_TerminalClient::*)(SC_TerminalClient * const)) 0x56246de003e2 <SC_TerminalClient::inputThreadFn()>, 
    __t=@0x56246fa20168: 0x56246fa78bd0) at /usr/include/c++/8.1.1/bits/invoke.h:73
#7  0x000056246de139a4 in std::__invoke<void (SC_TerminalClient::*&)(), SC_TerminalClient*&> (__fn=@0x56246fa20158: (void (SC_TerminalClient::*)(SC_TerminalClient * const)) 0x56246de003e2 <SC_TerminalClient::inputThreadFn()>, __args#0=@0x56246fa20168: 0x56246fa78bd0)
    at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000056246de12cd4 in std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x56246fa20158, __args=...) at /usr/include/c++/8.1.1/functional:400
#9  0x000056246de111bf in std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>::operator()<, void>() (this=0x56246fa20158) at /usr/include/c++/8.1.1/functional:484
#10 0x000056246de0ea86 in std::__invoke_impl<void, std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>>(std::__invoke_other, std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#11 0x000056246de0c10d in std::__invoke<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>>(std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#12 0x000056246de174a6 in std::thread::_Invoker<std::tuple<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x56246fa20158) at /usr/include/c++/8.1.1/thread:234
#13 0x000056246de16a20 in std::thread::_Invoker<std::tuple<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()> > >::operator()() (this=0x56246fa20158) at /usr/include/c++/8.1.1/thread:243
#14 0x000056246de16152 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()> > > >::_M_run() (this=0x56246fa20150) at /usr/include/c++/8.1.1/thread:186
#15 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#16 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#17 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 30 (Thread 0x7f792affd700 (LWP 7512)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79c37a4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000056246de1f8de in std::_V2::condition_variable_any::wait<std::unique_lock<std::timed_mutex> > (this=0x56246e4f2d60 <gSchedCond>, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000056246de1bb20 in schedRunFunc () at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:439
#5  0x000056246de202f0 in std::__invoke_impl<void, void (*)()> (__f=@0x56247155b468: 0x56246de1ba7b <schedRunFunc()>) at /usr/include/c++/8.1.1/bits/invoke.h:60
#6  0x000056246de1f430 in std::__invoke<void (*)()> (__fn=@0x56247155b468: 0x56246de1ba7b <schedRunFunc()>) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000056246de22516 in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x56247155b468) at /usr/include/c++/8.1.1/thread:234
#8  0x000056246de22466 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x56247155b468) at /usr/include/c++/8.1.1/thread:243
#9  0x000056246de22378 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x56247155b460) at /usr/include/c++/8.1.1/thread:186
#10 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#11 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#12 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 29 (Thread 0x7f792a7fc700 (LWP 7394)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79c37a4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000056246de1ff92 in std::_V2::condition_variable_any::wait<std::timed_mutex> (this=0x562470111880, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000056246de1c6e1 in TempoClock::Run (this=0x562470111830) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:854
---Type <return> to continue, or q <return> to quit--- 
#5  0x000056246de21d61 in std::__invoke_impl<void*, void* (TempoClock::*&)(), TempoClock*&> (__f=@0x56246fa23178: (void *(TempoClock::*)(TempoClock * const)) 0x56246de1c64a <TempoClock::Run()>, __t=@0x56246fa23188: 0x562470111830)
    at /usr/include/c++/8.1.1/bits/invoke.h:73
#6  0x000056246de219fe in std::__invoke<void* (TempoClock::*&)(), TempoClock*&> (__fn=@0x56246fa23178: (void *(TempoClock::*)(TempoClock * const)) 0x56246de1c64a <TempoClock::Run()>, __args#0=@0x56246fa23188: 0x562470111830) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000056246de216f2 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::__call<void*, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x56246fa23178, __args=...) at /usr/include/c++/8.1.1/functional:400
#8  0x000056246de21317 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::operator()<, void*>() (this=0x56246fa23178) at /usr/include/c++/8.1.1/functional:484
#9  0x000056246de20ad2 in std::__invoke_impl<void*, std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::__invoke_other, std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#10 0x000056246de1fc55 in std::__invoke<std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#11 0x000056246de224ea in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x56246fa23178) at /usr/include/c++/8.1.1/thread:234
#12 0x000056246de22426 in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::operator()() (this=0x56246fa23178) at /usr/include/c++/8.1.1/thread:243
#13 0x000056246de22358 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > > >::_M_run() (this=0x56246fa23170) at /usr/include/c++/8.1.1/thread:186
#14 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#15 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#16 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 28 (Thread 0x7f7929ffb700 (LWP 7393)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79c37a4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000056246de1ff92 in std::_V2::condition_variable_any::wait<std::timed_mutex> (this=0x56246ff76e30, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000056246de1c6e1 in TempoClock::Run (this=0x56246ff76de0) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:854
#5  0x000056246de21d61 in std::__invoke_impl<void*, void* (TempoClock::*&)(), TempoClock*&> (__f=@0x56246faace38: (void *(TempoClock::*)(TempoClock * const)) 0x56246de1c64a <TempoClock::Run()>, __t=@0x56246faace48: 0x56246ff76de0)
    at /usr/include/c++/8.1.1/bits/invoke.h:73
#6  0x000056246de219fe in std::__invoke<void* (TempoClock::*&)(), TempoClock*&> (__fn=@0x56246faace38: (void *(TempoClock::*)(TempoClock * const)) 0x56246de1c64a <TempoClock::Run()>, __args#0=@0x56246faace48: 0x56246ff76de0) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000056246de216f2 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::__call<void*, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x56246faace38, __args=...) at /usr/include/c++/8.1.1/functional:400
#8  0x000056246de21317 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::operator()<, void*>() (this=0x56246faace38) at /usr/include/c++/8.1.1/functional:484
#9  0x000056246de20ad2 in std::__invoke_impl<void*, std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::__invoke_other, std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#10 0x000056246de1fc55 in std::__invoke<std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#11 0x000056246de224ea in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x56246faace38) at /usr/include/c++/8.1.1/thread:234
#12 0x000056246de22426 in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::operator()() (this=0x56246faace38) at /usr/include/c++/8.1.1/thread:243
#13 0x000056246de22358 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > > >::_M_run() (this=0x56246faace30) at /usr/include/c++/8.1.1/thread:186
#14 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#15 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#16 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 27 (Thread 0x7f79297fa700 (LWP 7392)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79c37a4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000056246de1ff92 in std::_V2::condition_variable_any::wait<std::timed_mutex> (this=0x56247004da80, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000056246de1c6e1 in TempoClock::Run (this=0x56247004da30) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:854
#5  0x000056246de21d61 in std::__invoke_impl<void*, void* (TempoClock::*&)(), TempoClock*&> (__f=@0x562470b44058: (void *(TempoClock::*)(TempoClock * const)) 0x56246de1c64a <TempoClock::Run()>, __t=@0x562470b44068: 0x56247004da30)
    at /usr/include/c++/8.1.1/bits/invoke.h:73
#6  0x000056246de219fe in std::__invoke<void* (TempoClock::*&)(), TempoClock*&> (__fn=@0x562470b44058: (void *(TempoClock::*)(TempoClock * const)) 0x56246de1c64a <TempoClock::Run()>, __args#0=@0x562470b44068: 0x56247004da30) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000056246de216f2 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::__call<void*, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x562470b44058, __args=...) at /usr/include/c++/8.1.1/functional:400
#8  0x000056246de21317 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::operator()<, void*>() (this=0x562470b44058) at /usr/include/c++/8.1.1/functional:484
#9  0x000056246de20ad2 in std::__invoke_impl<void*, std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::__invoke_other, std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#10 0x000056246de1fc55 in std::__invoke<std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#11 0x000056246de224ea in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x562470b44058) at /usr/include/c++/8.1.1/thread:234
#12 0x000056246de22426 in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::operator()() (this=0x562470b44058) at /usr/include/c++/8.1.1/thread:243
#13 0x000056246de22358 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > > >::_M_run() (this=0x562470b44050) at /usr/include/c++/8.1.1/thread:186
#14 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#15 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#16 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 26 (Thread 0x7f792bfff700 (LWP 7384)):
#0  0x00007f79c2e74ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007f79a12cb673 in ?? () from /usr/lib/libpulse.so.0
#2  0x00007f79a12bc990 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
#3  0x00007f79a12bcfe0 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#4  0x00007f79a12bd091 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#5  0x00007f79a12cb5ae in ?? () from /usr/lib/libpulse.so.0
#6  0x00007f79a0a089fc in ?? () from /usr/lib/pulseaudio/libpulsecommon-12.0.so
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6
---Type <return> to continue, or q <return> to quit---

Thread 25 (Thread 0x7f7945ffb700 (LWP 7383)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8930cf in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8db704 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 24 (Thread 0x7f79467fc700 (LWP 7382)):
#0  0x00007f79c2e7f85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007f79c1403a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007f79c13f98f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007f79ca89963d in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8db704 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 23 (Thread 0x7f7946ffd700 (LWP 7381)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8930cf in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8db704 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 22 (Thread 0x7f79477fe700 (LWP 7380)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79cb21c7b8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8de276 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 21 (Thread 0x7f7947fff700 (LWP 7379)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb858 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccb3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 20 (Thread 0x7f7974ff9700 (LWP 7378)):
#0  0x00007f79c2e7f85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007f79c1403a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007f79c13f98f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007f79ca899724 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79c99ceb0a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79c99cefb7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
---Type <return> to continue, or q <return> to quit---
#7  0x00007f79ca8db838 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#9  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#10 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 19 (Thread 0x7f79757fa700 (LWP 7377)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb858 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccb3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 18 (Thread 0x7f7975ffb700 (LWP 7376)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb858 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccb3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 17 (Thread 0x7f79767fc700 (LWP 7375)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb858 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccb3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 16 (Thread 0x7f7976ffd700 (LWP 7374)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb858 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccb3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 15 (Thread 0x7f79777fe700 (LWP 7373)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4bf9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c69a8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb858 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccb3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 14 (Thread 0x7f79857fa700 (LWP 7370)):
#0  0x00007f79cf3f13f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4cc7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c699a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
---Type <return> to continue, or q <return> to quit---
#3  0x00007f79ca8c6a82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb841 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccd21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 13 (Thread 0x7f7985ffb700 (LWP 7369)):
#0  0x00007f79cf3f13f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4cc7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c699a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb841 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccd21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 12 (Thread 0x7f79867fc700 (LWP 7368)):
#0  0x00007f79cf3f13f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4cc7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c699a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb841 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccd21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 11 (Thread 0x7f7986ffd700 (LWP 7367)):
#0  0x00007f79cf3f13f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f79ca8c4cc7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8c699a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8c6a82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8cb841 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8ccd21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 10 (Thread 0x7f79877fe700 (LWP 7366)):
#0  0x00007f79c2e7f85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007f79c1403a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007f79c13f98f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007f79ca89963d in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8db704 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 9 (Thread 0x7f7987fff700 (LWP 7365)):
#0  0x00007f79c2e771d7 in select () from /usr/lib/libc.so.6
#1  0x00007f79ca87bdcf in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca875748 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca895faa in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca896a5f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca896bda in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca893081 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007f79ca8db704 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#9  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#10 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#11 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6
---Type <return> to continue, or q <return> to quit---

Thread 8 (Thread 0x7f79948ef700 (LWP 7364)):
#0  0x00007f79c2e7f85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007f79c1403a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007f79c13f98f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007f79ca89963d in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79ca8b893b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007f79ca8db704 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 7 (Thread 0x7f79950f0700 (LWP 7362)):
#0  0x00007f79c2e74ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007f79c9d01792 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007f79ca8de276 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007f79ca8d7151 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 6 (Thread 0x7f7997fff700 (LWP 7361)):
#0  0x00007f79c2e74ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007f79c28a9523 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f79c28a963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f79c58fb039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f79c58a694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f79c56efa99 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007f79ae3cb976 in ?? () from /usr/lib/libQt5DBus.so.5
#7  0x00007f79c56f9b45 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 5 (Thread 0x7f799e0c8700 (LWP 7360)):
#0  0x00007f79cf3f0ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f799ed63124 in ?? () from /usr/lib/dri/i965_dri.so
#2  0x00007f799ed62e18 in ?? () from /usr/lib/dri/i965_dri.so
#3  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7f79ac0e0700 (LWP 7342)):
#0  0x00007f79c2e74ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007f79c0da1180 in ?? () from /usr/lib/libxcb.so.1
#2  0x00007f79c0da2e4b in xcb_wait_for_event () from /usr/lib/libxcb.so.1
#3  0x00007f79ae68822a in ?? () from /usr/lib/libQt5XcbQpa.so.5
#4  0x00007f79c56f9b45 in ?? () from /usr/lib/libQt5Core.so.5
#5  0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f79af3c1700 (LWP 7340)):
#0  0x00007f79cf3f3a52 in do_futex_wait () from /usr/lib/libpthread.so.0
#1  0x00007f79cf3f3b63 in __new_sem_wait_slow () from /usr/lib/libpthread.so.0
#2  0x000056246de1ee2e in boost::sync::linux_::semaphore::priv_timed_wait (this=0x56246e4f2e00 <gResyncThreadSemaphore>, t=...)
    at /home/shimpe/development/supercollider/supercollider/external_libraries/boost_sync/include/boost/sync/detail/semaphore/semaphore_posix.hpp:148
#3  0x000056246de1ede7 in boost::sync::linux_::semaphore::priv_timed_wait (this=0x56246e4f2e00 <gResyncThreadSemaphore>, dur=...)
    at /home/shimpe/development/supercollider/supercollider/external_libraries/boost_sync/include/boost/sync/detail/semaphore/semaphore_posix.hpp:141
#4  0x000056246de1f75e in boost::sync::linux_::semaphore::wait_for<std::chrono::duration<long, std::ratio<1l, 1l> > > (this=0x56246e4f2e00 <gResyncThreadSemaphore>, duration=...)
    at /home/shimpe/development/supercollider/supercollider/external_libraries/boost_sync/include/boost/sync/detail/semaphore/semaphore_posix.hpp:129
#5  0x000056246de1ba27 in resyncThread () at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:412
#6  0x000056246de202f0 in std::__invoke_impl<void, void (*)()> (__f=@0x56246f999d68: 0x56246de1b9e2 <resyncThread()>) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x000056246de1f430 in std::__invoke<void (*)()> (__fn=@0x56246f999d68: 0x56246de1b9e2 <resyncThread()>) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000056246de22516 in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x56246f999d68) at /usr/include/c++/8.1.1/thread:234
#9  0x000056246de22466 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x56246f999d68) at /usr/include/c++/8.1.1/thread:243
#10 0x000056246de22378 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x56246f999d60) at /usr/include/c++/8.1.1/thread:186
#11 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
---Type <return> to continue, or q <return> to quit---
#12 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#13 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f79afbc2700 (LWP 7339)):
#0  0x00007f79c2e7f85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x000056246de05891 in boost::asio::detail::epoll_reactor::run (this=0x56246fa5c200, usec=-1, ops=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/epoll_reactor.ipp:471
#2  0x000056246de07051 in boost::asio::detail::scheduler::do_run_one (this=0x56246f9d25d0, lock=..., this_thread=..., ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:385
#3  0x000056246de06acf in boost::asio::detail::scheduler::run (this=0x56246f9d25d0, ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:154
#4  0x000056246de075f3 in boost::asio::io_context::run (this=0x56246e515d20 <ioService>) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/impl/io_context.ipp:62
#5  0x000056246dfe1fbb in asioFunction () at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/SC_ComPort.cpp:54
#6  0x000056246de202f0 in std::__invoke_impl<void, void (*)()> (__f=@0x56246f99a668: 0x56246dfe1f88 <asioFunction()>) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x000056246de1f430 in std::__invoke<void (*)()> (__fn=@0x56246f99a668: 0x56246dfe1f88 <asioFunction()>) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000056246de22516 in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x56246f99a668) at /usr/include/c++/8.1.1/thread:234
#9  0x000056246de22466 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x56246f99a668) at /usr/include/c++/8.1.1/thread:243
#10 0x000056246de22378 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x56246f99a660) at /usr/include/c++/8.1.1/thread:186
#11 0x00007f79c37aad4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#12 0x00007f79cf3eb075 in start_thread () from /usr/lib/libpthread.so.0
#13 0x00007f79c2e7f53f in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f79cf76ddc0 (LWP 7338)):
#0  0x00007f79cf3f429c in __lll_lock_wait () from /usr/lib/libpthread.so.0
#1  0x00007f79cf3ed7c4 in pthread_mutex_lock () from /usr/lib/libpthread.so.0
#2  0x000056246de1a907 in __gthread_mutex_lock (__mutex=0x56246e4f2da0 <gLangMutex>) at /usr/include/c++/8.1.1/x86_64-pc-linux-gnu/bits/gthr-default.h:748
#3  0x000056246de1ea82 in std::timed_mutex::lock (this=0x56246e4f2da0 <gLangMutex>) at /usr/include/c++/8.1.1/mutex:192
#4  0x000056246df99054 in SC_LanguageClient::lock (this=0x56246fa78bd0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_LanguageClient.cpp:323
#5  0x000056246de18d29 in QtCollider::LangClient::tick (this=0x56246fa78bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:100
#6  0x000056246de18f8f in QtCollider::LangClient::timerEvent (this=0x56246fa78bc0, e=0x7ffdf4a88600) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:119
#7  0x00007f79c58d238b in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007f79c661ba74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#9  0x00007f79c6623341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#10 0x000056246e0109f5 in QcApplication::notify (this=0x56246fa3bf10, object=0x56246fa78bc0, event=0x7ffdf4a88600) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#11 0x00007f79c58a7cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007f79c58fa40a in QTimerInfoList::activateTimers() () from /usr/lib/libQt5Core.so.5
#13 0x00007f79c58fac92 in ?? () from /usr/lib/libQt5Core.so.5
#14 0x00007f79c28a9368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#15 0x00007f79c28a95b1 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007f79c28a963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#17 0x00007f79c58fb039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#18 0x00007f79ae71d722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#19 0x00007f79c58a694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#20 0x00007f79a847aad7 in KJob::exec() () from /usr/lib/libKF5CoreAddons.so.5
#21 0x00007f79aada9e68 in KFileWidget::KFileWidget(QUrl const&, QWidget*) () from /usr/lib/libKF5KIOFileWidgets.so.5
#22 0x00007f79ab27c176 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#23 0x00007f79ab27c837 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#24 0x00007f79ab27182e in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#25 0x00007f79c681027e in QDialogPrivate::platformHelper() const () from /usr/lib/libQt5Widgets.so.5
#26 0x00007f79c6822a2d in QFileDialogPrivate::init(QUrl const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#27 0x00007f79c6822e52 in QFileDialog::QFileDialog(QWidget*, QString const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#28 0x000056246e05ec3d in QcFileDialog::QcFileDialog (this=0x5624700d0060, fileMode=1, acceptMode=0, startDir=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/QcFileDialog.cpp:28
#29 0x000056246e078f7f in QcFileDialog::qt_static_metacall (_o=0x0, _c=QMetaObject::CreateInstance, _id=0, _a=0x7ffdf4a88dd0) at /home/shimpe/development/supercollider/build/lang/__/QtCollider/widgets/moc_QcFileDialog.cpp:101
#30 0x00007f79c58b1019 in QMetaObject::static_metacall(QMetaObject::Call, int, void**) const () from /usr/lib/libQt5Core.so.5
#31 0x00007f79c58b756d in QMetaObject::newInstance(QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () from /usr/lib/libQt5Core.so.5
#32 0x000056246e05f7cd in QcObjectFactory<QcFileDialog>::newInstance (this=0x56246f9abc90, scObject=0x562479294328, arg=0x7ffdf4a892f0) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/../QcObjectFactory.h:87
#33 0x000056246dfb4738 in QtCollider::LangPrimitive<QtCollider::QObject_New>::implementation (r=0x562471a548a8, a=0x562471a548b8, g=0x56246e511860 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:104
#34 0x000056246dfbb501 in QtCollider::LangPrimitive<QtCollider::QObject_New>::mediate (g=0x56246e511860 <gVMGlobals>, i=3) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:61
#35 0x000056246de2dae1 in doPrimitive (g=0x56246e511860 <gVMGlobals>, meth=0x562472233840, numArgsPushed=3) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrPrimitive.cpp:3837
#36 0x000056246df35574 in Interpret (g=0x56246e511860 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:2641
#37 0x000056246df2455c in runInterpreter (g=0x56246e511860 <gVMGlobals>, selector=0x56247228d918, numArgsPushed=2) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:127
#38 0x000056246e010ecf in QtCollider::runLang (receiver=0x56247928b4f8, method=0x56247228d918, args=..., result=0x0) at /home/shimpe/development/supercollider/supercollider/QtCollider/Common.cpp:46
#39 0x000056246e012ece in QObjectProxy::invokeScMethod (this=0x56247010c0e0, method=0x56247228d918, args=..., result=0x0, locked=false) at /home/shimpe/development/supercollider/supercollider/QtCollider/QObjectProxy.cpp:237
#40 0x000056246e016a4c in QcMethodSignalHandler::react (this=0x562470126d70, args=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:146
#41 0x000056246e0166a2 in QcSignalSpy::qt_metacall (this=0x562470126d70, call=QMetaObject::InvokeMetaMethod, methodId=0, argData=0x7f79a400a450) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:104
#42 0x00007f79c58d23d2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#43 0x00007f79c661ba74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
---Type <return> to continue, or q <return> to quit---
#44 0x00007f79c6623341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#45 0x000056246e0109f5 in QcApplication::notify (this=0x56246fa3bf10, object=0x562470126d70, event=0x5624700df760) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#46 0x00007f79c58a7cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#47 0x00007f79c58aad4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#48 0x00007f79c58fba54 in ?? () from /usr/lib/libQt5Core.so.5
#49 0x00007f79c28a9368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#50 0x00007f79c28a95b1 in ?? () from /usr/lib/libglib-2.0.so.0
#51 0x00007f79c28a963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#52 0x00007f79c58fb039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#53 0x00007f79ae71d722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#54 0x00007f79c58a694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#55 0x00007f79c58aec46 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#56 0x000056246de18697 in QtCollider::LangClient::commandLoop (this=0x56246fa78bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:44
#57 0x000056246ddff6a4 in SC_TerminalClient::run (this=0x56246fa78bd0, argc=0, argv=0x7ffdf4a8a2a0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:284
#58 0x000056246ddfe892 in main (argc=5, argv=0x7ffdf4a8a278) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/cmdLineFuncs.cpp:28

@shimpe
Copy link
Contributor Author

shimpe commented Jun 30, 2018

A new day, a new experiment: I dumped backtraces for all threads, once when it was hanging and once when it was not hanging. I then removed all threads that are common between the two scenario's and ended up with this:

Case where it's hanging:

Thread 32 (Thread 0x7efe09ffb700 (LWP 2076)):
#0  0x00007efe54fa1934 in read () from /usr/lib/libc.so.6
#1  0x00007efe54f33788 in __GI__IO_file_underflow () from /usr/lib/libc.so.6
#2  0x00007efe54f348a2 in __GI__IO_default_uflow () from /usr/lib/libc.so.6
#3  0x00007efe54f2821b in __GI__IO_getline_info () from /usr/lib/libc.so.6
#4  0x00007efe54f2728b in fgets () from /usr/lib/libc.so.6
#5  0x0000555b4a57fb8c in string_popen_thread_func (process=0x7efde40022c0) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrUnixPrim.cpp:125
#6  0x0000555b4a582b60 in std::__invoke_impl<void, void (*&)(sc_process*), sc_process*&> (__f=@0x7efde4000de8: 0x555b4a57fb30 <string_popen_thread_func(sc_process*)>, __args#0=@0x7efde4000df0: 0x7efde40022c0) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x0000555b4a582902 in std::__invoke<void (*&)(sc_process*), sc_process*&> (__fn=@0x7efde4000de8: 0x555b4a57fb30 <string_popen_thread_func(sc_process*)>, __args#0=@0x7efde4000df0: 0x7efde40022c0) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x0000555b4a58240a in std::_Bind<void (*(sc_process*))(sc_process*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x7efde4000de8, __args=...) at /usr/include/c++/8.1.1/functional:400
#9  0x0000555b4a581c6f in std::_Bind<void (*(sc_process*))(sc_process*)>::operator()<, void>() (this=0x7efde4000de8) at /usr/include/c++/8.1.1/functional:484
#10 0x0000555b4a58174e in std::__invoke_impl<void, std::_Bind<void (*(sc_process*))(sc_process*)>>(std::__invoke_other, std::_Bind<void (*(sc_process*))(sc_process*)>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#11 0x0000555b4a5811e2 in std::__invoke<std::_Bind<void (*(sc_process*))(sc_process*)>>(std::_Bind<void (*(sc_process*))(sc_process*)>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#12 0x0000555b4a583100 in std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x7efde4000de8) at /usr/include/c++/8.1.1/thread:234
#13 0x0000555b4a5830c0 in std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > >::operator()() (this=0x7efde4000de8) at /usr/include/c++/8.1.1/thread:243
#14 0x0000555b4a583094 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > > >::_M_run() (this=0x7efde4000de0) at /usr/include/c++/8.1.1/thread:186
#15 0x00007efe558dbd4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#16 0x00007efe6151c075 in start_thread () from /usr/lib/libpthread.so.0
#17 0x00007efe54fb053f in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7efe6189edc0 (LWP 1777)):
#0  0x00007efe6152529c in __lll_lock_wait () from /usr/lib/libpthread.so.0
#1  0x00007efe6151e7c4 in pthread_mutex_lock () from /usr/lib/libpthread.so.0
#2  0x0000555b4a47f907 in __gthread_mutex_lock (__mutex=0x555b4ab57da0 <gLangMutex>) at /usr/include/c++/8.1.1/x86_64-pc-linux-gnu/bits/gthr-default.h:748
#3  0x0000555b4a483a82 in std::timed_mutex::lock (this=0x555b4ab57da0 <gLangMutex>) at /usr/include/c++/8.1.1/mutex:192
#4  0x0000555b4a5fe004 in SC_LanguageClient::lock (this=0x555b4aec9bd0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_LanguageClient.cpp:323
#5  0x0000555b4a47dd29 in QtCollider::LangClient::tick (this=0x555b4aec9bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:100
#6  0x0000555b4a47df8f in QtCollider::LangClient::timerEvent (this=0x555b4aec9bc0, e=0x7ffcce461f40) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:119
#7  0x00007efe57a0338b in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007efe5874ca74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#9  0x00007efe58754341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#10 0x0000555b4a6759a5 in QcApplication::notify (this=0x555b4ae8cf10, object=0x555b4aec9bc0, event=0x7ffcce461f40) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#11 0x00007efe579d8cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007efe57a2b40a in QTimerInfoList::activateTimers() () from /usr/lib/libQt5Core.so.5
#13 0x00007efe57a2bc92 in ?? () from /usr/lib/libQt5Core.so.5
#14 0x00007efe549da368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#15 0x00007efe549da5b1 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007efe549da63e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#17 0x00007efe57a2c039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#18 0x00007efe3ffda722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#19 0x00007efe579d794c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#20 0x00007efe35cd2ad7 in KJob::exec() () from /usr/lib/libKF5CoreAddons.so.5
#21 0x00007efe3c666e68 in KFileWidget::KFileWidget(QUrl const&, QWidget*) () from /usr/lib/libKF5KIOFileWidgets.so.5
#22 0x00007efe3cb39176 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#23 0x00007efe3cb39837 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#24 0x00007efe3cb2e82e in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#25 0x00007efe5894127e in QDialogPrivate::platformHelper() const () from /usr/lib/libQt5Widgets.so.5
#26 0x00007efe58953a2d in QFileDialogPrivate::init(QUrl const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#27 0x00007efe58953e52 in QFileDialog::QFileDialog(QWidget*, QString const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#28 0x0000555b4a6c3bed in QcFileDialog::QcFileDialog (this=0x555b4b67d050, fileMode=1, acceptMode=0, startDir=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/QcFileDialog.cpp:28
#29 0x0000555b4a6ddf2f in QcFileDialog::qt_static_metacall (_o=0x0, _c=QMetaObject::CreateInstance, _id=0, _a=0x7ffcce462710) at /home/shimpe/development/supercollider/build/lang/__/QtCollider/widgets/moc_QcFileDialog.cpp:101
#30 0x00007efe579e2019 in QMetaObject::static_metacall(QMetaObject::Call, int, void**) const () from /usr/lib/libQt5Core.so.5
#31 0x00007efe579e856d in QMetaObject::newInstance(QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () from /usr/lib/libQt5Core.so.5
#32 0x0000555b4a6c477d in QcObjectFactory<QcFileDialog>::newInstance (this=0x555b4adfcc90, scObject=0x555b53c4dbd8, arg=0x7ffcce462c30) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/../QcObjectFactory.h:87
#33 0x0000555b4a6196e8 in QtCollider::LangPrimitive<QtCollider::QObject_New>::implementation (r=0x555b4ce68ea8, a=0x555b4ce68eb8, g=0x555b4ab76860 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:104
#34 0x0000555b4a6204b1 in QtCollider::LangPrimitive<QtCollider::QObject_New>::mediate (g=0x555b4ab76860 <gVMGlobals>, i=3) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:61
#35 0x0000555b4a492a91 in doPrimitive (g=0x555b4ab76860 <gVMGlobals>, meth=0x555b4d684980, numArgsPushed=3) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrPrimitive.cpp:3837
#36 0x0000555b4a59a524 in Interpret (g=0x555b4ab76860 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:2641
#37 0x0000555b4a58950c in runInterpreter (g=0x555b4ab76860 <gVMGlobals>, selector=0x555b4d6dea58, numArgsPushed=2) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:127
#38 0x0000555b4a675e7f in QtCollider::runLang (receiver=0x555b5229f108, method=0x555b4d6dea58, args=..., result=0x0) at /home/shimpe/development/supercollider/supercollider/QtCollider/Common.cpp:46
#39 0x0000555b4a677e7e in QObjectProxy::invokeScMethod (this=0x7efde4021420, method=0x555b4d6dea58, args=..., result=0x0, locked=false) at /home/shimpe/development/supercollider/supercollider/QtCollider/QObjectProxy.cpp:237
#40 0x0000555b4a67b9fc in QcMethodSignalHandler::react (this=0x555b4b5ea170, args=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:146
#41 0x0000555b4a67b652 in QcSignalSpy::qt_metacall (this=0x555b4b5ea170, call=QMetaObject::InvokeMetaMethod, methodId=0, argData=0x7efe38011c30) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:104
#42 0x00007efe57a033d2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#43 0x00007efe5874ca74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#44 0x00007efe58754341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#45 0x0000555b4a6759a5 in QcApplication::notify (this=0x555b4ae8cf10, object=0x555b4b5ea170, event=0x7efe3800faf0) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#46 0x00007efe579d8cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#47 0x00007efe579dbd4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#48 0x00007efe57a2ca54 in ?? () from /usr/lib/libQt5Core.so.5
#49 0x00007efe549da368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#50 0x00007efe549da5b1 in ?? () from /usr/lib/libglib-2.0.so.0
#51 0x00007efe549da63e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#52 0x00007efe57a2c039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#53 0x00007efe3ffda722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#54 0x00007efe579d794c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#55 0x00007efe579dfc46 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#56 0x0000555b4a47d697 in QtCollider::LangClient::commandLoop (this=0x555b4aec9bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:44
#57 0x0000555b4a4646a4 in SC_TerminalClient::run (this=0x555b4aec9bd0, argc=0, argv=0x7ffcce463be0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:284
#58 0x0000555b4a463892 in main (argc=5, argv=0x7ffcce463bb8) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/cmdLineFuncs.cpp:28

Case where it's not hanging:

Thread 32 (Thread 0x7efe09ffb700 (LWP 2040)):
#0  0x00007efe61521ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007efe5782b2fc in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007efe5896add6 in ?? () from /usr/lib/libQt5Widgets.so.5
#3  0x00007efe5782ab45 in ?? () from /usr/lib/libQt5Core.so.5
#4  0x00007efe6151c075 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007efe54fb053f in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7efe6189edc0 (LWP 1777)):
#0  0x00007efe54fa5ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007efe549da523 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007efe549da63e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007efe57a2c039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007efe3ffda722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#5  0x00007efe579d794c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#6  0x00007efe5894246e in QDialog::exec() () from /usr/lib/libQt5Widgets.so.5
#7  0x0000555b4a6de6ac in QcFileDialog::show (this=0x7efe3800e8e0) at /home/shimpe/development/supercollider/build/lang/__/QtCollider/widgets/../../../../../supercollider/QtCollider/widgets/QcFileDialog.h:58
#8  0x0000555b4a6de1c7 in QcFileDialog::qt_static_metacall (_o=0x7efe3800e8e0, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x555b4b621dc0) at /home/shimpe/development/supercollider/build/lang/__/QtCollider/widgets/moc_QcFileDialog.cpp:117
#9  0x00007efe57a033d2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#10 0x00007efe5874ca74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#11 0x00007efe58754341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#12 0x0000555b4a6759a5 in QcApplication::notify (this=0x555b4ae8cf10, object=0x7efe3800e8e0, event=0x555b4b63eb60) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:168
#13 0x00007efe579d8cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#14 0x00007efe579dbd4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#15 0x00007efe57a2ca54 in ?? () from /usr/lib/libQt5Core.so.5
#16 0x00007efe549da368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#17 0x00007efe549da5b1 in ?? () from /usr/lib/libglib-2.0.so.0
#18 0x00007efe549da63e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#19 0x00007efe57a2c039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#20 0x00007efe3ffda722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#21 0x00007efe579d794c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#22 0x00007efe579dfc46 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#23 0x0000555b4a47d697 in QtCollider::LangClient::commandLoop (this=0x555b4aec9bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:44
#24 0x0000555b4a4646a4 in SC_TerminalClient::run (this=0x555b4aec9bd0, argc=0, argv=0x7ffcce463be0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:284
#25 0x0000555b4a463892 in main (argc=5, argv=0x7ffcce463bb8) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/cmdLineFuncs.cpp:28

@nhthn
Copy link
Contributor

nhthn commented Jul 22, 2018

@scztt has a lead on this one -- has something to do with incorrectly re-entering the language thread, and in theory should actually be happening on all platforms (but mysteriously isn't). appears that the method will have to be rewritten with an asynchronous callback.

@shimpe
Copy link
Contributor Author

shimpe commented Jul 22, 2018

that's good news... it's slowly driving me crazy having to kill the interpreter all the time for no good reason :)

@shimpe
Copy link
Contributor Author

shimpe commented Jul 23, 2018

(after today, make that "quickly" driving me crazy :) )

@nhthn
Copy link
Contributor

nhthn commented Aug 10, 2018

@shimpe sorry i led you down so many wrong paths trying to figure this one out haha... #3968 should fix this

@shimpe
Copy link
Contributor Author

shimpe commented Aug 10, 2018

That is excellent news. I'll be sure to test it when I get home this evening.

@shimpe
Copy link
Contributor Author

shimpe commented Aug 10, 2018

@snappizz @scztt unfortunately the new version still hangs up for me

@scztt
Copy link
Contributor

scztt commented Aug 10, 2018

@snappizz @scztt unfortunately the new version still hangs up for me
Can you post a stack trace of your hang in the new build?

@shimpe
Copy link
Contributor Author

shimpe commented Aug 10, 2018

@scztt sure:

Thread 34 (Thread 0x7fbae57fa700 (LWP 18284)):
#0  0x00007fbb64ab0934 in read () from /usr/lib/libc.so.6
#1  0x00007fbb64a42788 in __GI__IO_file_underflow () from /usr/lib/libc.so.6
#2  0x00007fbb64a438a2 in __GI__IO_default_uflow () from /usr/lib/libc.so.6
#3  0x00007fbb64a3721b in __GI__IO_getline_info () from /usr/lib/libc.so.6
#4  0x00007fbb64a3628b in fgets () from /usr/lib/libc.so.6
#5  0x000055bcf0d35f56 in string_popen_thread_func (process=0x7fba7c019d90) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrUnixPrim.cpp:125
#6  0x000055bcf0d38f2a in std::__invoke_impl<void, void (*&)(sc_process*), sc_process*&> (__f=@0x7fba7c002318: 0x55bcf0d35efa <string_popen_thread_func(sc_process*)>, __args#0=@0x7fba7c002320: 0x7fba7c019d90) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x000055bcf0d38ccc in std::__invoke<void (*&)(sc_process*), sc_process*&> (__fn=@0x7fba7c002318: 0x55bcf0d35efa <string_popen_thread_func(sc_process*)>, __args#0=@0x7fba7c002320: 0x7fba7c019d90) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000055bcf0d387d4 in std::_Bind<void (*(sc_process*))(sc_process*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x7fba7c002318, __args=...) at /usr/include/c++/8.1.1/functional:400
#9  0x000055bcf0d38039 in std::_Bind<void (*(sc_process*))(sc_process*)>::operator()<, void>() (this=0x7fba7c002318) at /usr/include/c++/8.1.1/functional:484
#10 0x000055bcf0d37b18 in std::__invoke_impl<void, std::_Bind<void (*(sc_process*))(sc_process*)>>(std::__invoke_other, std::_Bind<void (*(sc_process*))(sc_process*)>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#11 0x000055bcf0d375ac in std::__invoke<std::_Bind<void (*(sc_process*))(sc_process*)>>(std::_Bind<void (*(sc_process*))(sc_process*)>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#12 0x000055bcf0d394ca in std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x7fba7c002318) at /usr/include/c++/8.1.1/thread:234
#13 0x000055bcf0d3948a in std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > >::operator()() (this=0x7fba7c002318) at /usr/include/c++/8.1.1/thread:243
#14 0x000055bcf0d3945e in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (*(sc_process*))(sc_process*)> > > >::_M_run() (this=0x7fba7c002310) at /usr/include/c++/8.1.1/thread:186
#15 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#16 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#17 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 33 (Thread 0x7fbae5ffb700 (LWP 18279)):
#0  0x00007fbb64abf85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x000055bcf0c20ca1 in boost::asio::detail::epoll_reactor::run (this=0x55bcf2f588e0, usec=-1, ops=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/epoll_reactor.ipp:471
#2  0x000055bcf0c22461 in boost::asio::detail::scheduler::do_run_one (this=0x55bcf2f79420, lock=..., this_thread=..., ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:385
#3  0x000055bcf0c21edf in boost::asio::detail::scheduler::run (this=0x55bcf2f79420, ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:154
#4  0x000055bcf0c22a03 in boost::asio::io_context::run (this=0x55bcf2f73c70) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/impl/io_context.ipp:62
#5  0x000055bcf0c1b85d in SC_TerminalClient::inputThreadFn (this=0x55bcf2f73bd0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:639
#6  0x000055bcf0c2fb99 in std::__invoke_impl<void, void (SC_TerminalClient::*&)(), SC_TerminalClient*&> (__f=@0x55bcf2f16198: (void (SC_TerminalClient::*)(SC_TerminalClient * const)) 0x55bcf0c1b7f2 <SC_TerminalClient::inputThreadFn()>, __t=@0x55bcf2f161a8: 0x55bcf2f73bd0) at /usr/include/c++/8.1.1/bits/invoke.h:73
#7  0x000055bcf0c2edb4 in std::__invoke<void (SC_TerminalClient::*&)(), SC_TerminalClient*&> (__fn=@0x55bcf2f16198: (void (SC_TerminalClient::*)(SC_TerminalClient * const)) 0x55bcf0c1b7f2 <SC_TerminalClient::inputThreadFn()>, __args#0=@0x55bcf2f161a8: 0x55bcf2f73bd0) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000055bcf0c2e0e4 in std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x55bcf2f16198, __args=...) at /usr/include/c++/8.1.1/functional:400
#9  0x000055bcf0c2c5cf in std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>::operator()<, void>() (this=0x55bcf2f16198) at /usr/include/c++/8.1.1/functional:484
#10 0x000055bcf0c29e96 in std::__invoke_impl<void, std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>>(std::__invoke_other, std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#11 0x000055bcf0c2751d in std::__invoke<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>>(std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#12 0x000055bcf0c328b6 in std::thread::_Invoker<std::tuple<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x55bcf2f16198) at /usr/include/c++/8.1.1/thread:234
#13 0x000055bcf0c31e30 in std::thread::_Invoker<std::tuple<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()> > >::operator()() (this=0x55bcf2f16198) at /usr/include/c++/8.1.1/thread:243
#14 0x000055bcf0c31562 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (SC_TerminalClient::*(SC_TerminalClient*))()> > > >::_M_run() (this=0x55bcf2f16190) at /usr/include/c++/8.1.1/thread:186
#15 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#16 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#17 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 32 (Thread 0x7fbabb7fe700 (LWP 18278)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb653e4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000055bcf0c3acee in std::_V2::condition_variable_any::wait<std::unique_lock<std::timed_mutex> > (this=0x55bcf131eee0 <gSchedCond>, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000055bcf0c36f30 in schedRunFunc () at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:439
#5  0x000055bcf0c3b700 in std::__invoke_impl<void, void (*)()> (__f=@0x55bcf98c0fa8: 0x55bcf0c36e8b <schedRunFunc()>) at /usr/include/c++/8.1.1/bits/invoke.h:60
#6  0x000055bcf0c3a840 in std::__invoke<void (*)()> (__fn=@0x55bcf98c0fa8: 0x55bcf0c36e8b <schedRunFunc()>) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000055bcf0c3d926 in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x55bcf98c0fa8) at /usr/include/c++/8.1.1/thread:234
#8  0x000055bcf0c3d876 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x55bcf98c0fa8) at /usr/include/c++/8.1.1/thread:243
#9  0x000055bcf0c3d788 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x55bcf98c0fa0) at /usr/include/c++/8.1.1/thread:186
#10 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#11 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#12 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 31 (Thread 0x7fbabaffd700 (LWP 18161)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb653e4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000055bcf0c3b3a2 in std::_V2::condition_variable_any::wait<std::timed_mutex> (this=0x55bcf35e2e30, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000055bcf0c37af1 in TempoClock::Run (this=0x55bcf35e2de0) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:854
#5  0x000055bcf0c3d171 in std::__invoke_impl<void*, void* (TempoClock::*&)(), TempoClock*&> (__f=@0x55bcf2f1f578: (void *(TempoClock::*)(TempoClock * const)) 0x55bcf0c37a5a <TempoClock::Run()>, __t=@0x55bcf2f1f588: 0x55bcf35e2de0) at /usr/include/c++/8.1.1/bits/invoke.h:73
#6  0x000055bcf0c3ce0e in std::__invoke<void* (TempoClock::*&)(), TempoClock*&> (__fn=@0x55bcf2f1f578: (void *(TempoClock::*)(TempoClock * const)) 0x55bcf0c37a5a <TempoClock::Run()>, __args#0=@0x55bcf2f1f588: 0x55bcf35e2de0) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000055bcf0c3cb02 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::__call<void*, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x55bcf2f1f578, __args=...) at /usr/include/c++/8.1.1/functional:400
#8  0x000055bcf0c3c727 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::operator()<, void*>() (this=0x55bcf2f1f578) at /usr/include/c++/8.1.1/functional:484
#9  0x000055bcf0c3bee2 in std::__invoke_impl<void*, std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::__invoke_other, std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#10 0x000055bcf0c3b065 in std::__invoke<std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#11 0x000055bcf0c3d8fa in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x55bcf2f1f578) at /usr/include/c++/8.1.1/thread:234
#12 0x000055bcf0c3d836 in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::operator()() (this=0x55bcf2f1f578) at /usr/include/c++/8.1.1/thread:243
#13 0x000055bcf0c3d768 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > > >::_M_run() (this=0x55bcf2f1f570) at /usr/include/c++/8.1.1/thread:186
#14 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#15 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#16 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 30 (Thread 0x7fbaba7fc700 (LWP 18160)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb653e4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000055bcf0c3b3a2 in std::_V2::condition_variable_any::wait<std::timed_mutex> (this=0x55bcf3304fa0, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000055bcf0c37af1 in TempoClock::Run (this=0x55bcf3304f50) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:854
#5  0x000055bcf0c3d171 in std::__invoke_impl<void*, void* (TempoClock::*&)(), TempoClock*&> (__f=@0x55bcf2f16698: (void *(TempoClock::*)(TempoClock * const)) 0x55bcf0c37a5a <TempoClock::Run()>, __t=@0x55bcf2f166a8: 0x55bcf3304f50) at /usr/include/c++/8.1.1/bits/invoke.h:73
#6  0x000055bcf0c3ce0e in std::__invoke<void* (TempoClock::*&)(), TempoClock*&> (__fn=@0x55bcf2f16698: (void *(TempoClock::*)(TempoClock * const)) 0x55bcf0c37a5a <TempoClock::Run()>, __args#0=@0x55bcf2f166a8: 0x55bcf3304f50) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000055bcf0c3cb02 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::__call<void*, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x55bcf2f16698, __args=...) at /usr/include/c++/8.1.1/functional:400
#8  0x000055bcf0c3c727 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::operator()<, void*>() (this=0x55bcf2f16698) at /usr/include/c++/8.1.1/functional:484
#9  0x000055bcf0c3bee2 in std::__invoke_impl<void*, std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::__invoke_other, std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#10 0x000055bcf0c3b065 in std::__invoke<std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#11 0x000055bcf0c3d8fa in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x55bcf2f16698) at /usr/include/c++/8.1.1/thread:234
#12 0x000055bcf0c3d836 in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::operator()() (this=0x55bcf2f16698) at /usr/include/c++/8.1.1/thread:243
#13 0x000055bcf0c3d768 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > > >::_M_run() (this=0x55bcf2f16690) at /usr/include/c++/8.1.1/thread:186
#14 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#15 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#16 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 29 (Thread 0x7fbab9ffb700 (LWP 18159)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb653e4d6d in __gthread_cond_wait (__mutex=<optimized out>, __cond=<optimized out>) at /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:864
#2  std::condition_variable::wait (this=<optimized out>, __lock=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/condition_variable.cc:53
#3  0x000055bcf0c3b3a2 in std::_V2::condition_variable_any::wait<std::timed_mutex> (this=0x55bcf366ba50, __lock=...) at /usr/include/c++/8.1.1/condition_variable:263
#4  0x000055bcf0c37af1 in TempoClock::Run (this=0x55bcf366ba00) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:854
#5  0x000055bcf0c3d171 in std::__invoke_impl<void*, void* (TempoClock::*&)(), TempoClock*&> (__f=@0x55bcf36b9768: (void *(TempoClock::*)(TempoClock * const)) 0x55bcf0c37a5a <TempoClock::Run()>, __t=@0x55bcf36b9778: 0x55bcf366ba00) at /usr/include/c++/8.1.1/bits/invoke.h:73
#6  0x000055bcf0c3ce0e in std::__invoke<void* (TempoClock::*&)(), TempoClock*&> (__fn=@0x55bcf36b9768: (void *(TempoClock::*)(TempoClock * const)) 0x55bcf0c37a5a <TempoClock::Run()>, __args#0=@0x55bcf36b9778: 0x55bcf366ba00) at /usr/include/c++/8.1.1/bits/invoke.h:95
#7  0x000055bcf0c3cb02 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::__call<void*, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x55bcf36b9768, __args=...) at /usr/include/c++/8.1.1/functional:400
#8  0x000055bcf0c3c727 in std::_Bind<void* (TempoClock::*(TempoClock*))()>::operator()<, void*>() (this=0x55bcf36b9768) at /usr/include/c++/8.1.1/functional:484
#9  0x000055bcf0c3bee2 in std::__invoke_impl<void*, std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::__invoke_other, std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__f=...) at /usr/include/c++/8.1.1/bits/invoke.h:60
#10 0x000055bcf0c3b065 in std::__invoke<std::_Bind<void* (TempoClock::*(TempoClock*))()>>(std::_Bind<void* (TempoClock::*(TempoClock*))()>&&) (__fn=...) at /usr/include/c++/8.1.1/bits/invoke.h:95
#11 0x000055bcf0c3d8fa in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (this=0x55bcf36b9768) at /usr/include/c++/8.1.1/thread:234
#12 0x000055bcf0c3d836 in std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > >::operator()() (this=0x55bcf36b9768) at /usr/include/c++/8.1.1/thread:243
#13 0x000055bcf0c3d768 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void* (TempoClock::*(TempoClock*))()> > > >::_M_run() (this=0x55bcf36b9760) at /usr/include/c++/8.1.1/thread:186
#14 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#15 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#16 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 28 (Thread 0x7fbae4f36700 (LWP 18151)):
#0  0x00007fbb64ab4ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007fbb42888673 in ?? () from /usr/lib/libpulse.so.0
#2  0x00007fbb42879990 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
#3  0x00007fbb42879fe0 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#4  0x00007fbb4287a091 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#5  0x00007fbb428885ae in ?? () from /usr/lib/libpulse.so.0
#6  0x00007fbb41dc09fc in ?? () from /usr/lib/pulseaudio/libpulsecommon-12.2.so
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 27 (Thread 0x7fbae67fc700 (LWP 18150)):
#0  0x00007fbb64abf85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007fbb63043a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007fbb630398f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007fbb6c4d983d in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c51b904 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 26 (Thread 0x7fbae6ffd700 (LWP 18149)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4d32cf in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c51b904 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 25 (Thread 0x7fbae77fe700 (LWP 18148)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4d32cf in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c51b904 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 24 (Thread 0x7fbae7fff700 (LWP 18147)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6ce5c9b8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c51e476 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 23 (Thread 0x7fbb04ff9700 (LWP 18146)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba58 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 22 (Thread 0x7fbb057fa700 (LWP 18145)):
#0  0x00007fbb64abf85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007fbb63043a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007fbb630398f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007fbb6c4d9924 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6b60ed0a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6b60f1b7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb6c51ba38 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#9  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#10 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 21 (Thread 0x7fbb05ffb700 (LWP 18144)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba58 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 20 (Thread 0x7fbb067fc700 (LWP 18143)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba58 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 19 (Thread 0x7fbb06ffd700 (LWP 18142)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba58 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 18 (Thread 0x7fbb077fe700 (LWP 18141)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba58 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 17 (Thread 0x7fbb07fff700 (LWP 18140)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504df9 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506ba8 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba58 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 16 (Thread 0x7fbb28ff9700 (LWP 18139)):
#0  0x00007fbb710313f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504ec7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506b9a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba41 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cd3f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 15 (Thread 0x7fbb297fa700 (LWP 18138)):
#0  0x00007fbb710313f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504ec7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506b9a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba41 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cf21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 14 (Thread 0x7fbb29ffb700 (LWP 18137)):
#0  0x00007fbb710313f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504ec7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506b9a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba41 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cf21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 13 (Thread 0x7fbb2a7fc700 (LWP 18136)):
#0  0x00007fbb710313f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504ec7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506b9a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba41 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cf21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 12 (Thread 0x7fbb2affd700 (LWP 18135)):
#0  0x00007fbb710313f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504ec7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506b9a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba41 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cf21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 11 (Thread 0x7fbb2b7fe700 (LWP 18134)):
#0  0x00007fbb710313f6 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb6c504ec7 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c506b9a in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c506c82 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c50ba41 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c50cf21 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 10 (Thread 0x7fbb2bfff700 (LWP 18133)):
#0  0x00007fbb64abf85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007fbb63043a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007fbb630398f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007fbb6c4d983d in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c51b904 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 9 (Thread 0x7fbb3499a700 (LWP 18132)):
#0  0x00007fbb64ab71d7 in select () from /usr/lib/libc.so.6
#1  0x00007fbb6c4bbfcf in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c4b5948 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c4d61aa in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4d6c5f in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c4d6dda in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c4d3281 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#8  0x00007fbb6c51b904 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#9  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#10 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#11 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 8 (Thread 0x7fbb35219700 (LWP 18131)):
#0  0x00007fbb64abf85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x00007fbb63043a95 in ?? () from /usr/lib/libevent-2.1.so.6
#2  0x00007fbb630398f4 in event_base_loop () from /usr/lib/libevent-2.1.so.6
#3  0x00007fbb6c4d983d in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb6c4f8b3b in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#5  0x00007fbb6c51b904 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#6  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#7  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 7 (Thread 0x7fbb35a1a700 (LWP 18119)):
#0  0x00007fbb64ab4ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007fbb6b941992 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#2  0x00007fbb6c51e476 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#3  0x00007fbb6c517351 in ?? () from /usr/lib/libQt5WebEngineCore.so.5
#4  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 6 (Thread 0x7fbb3d2f3700 (LWP 18118)):
#0  0x00007fbb64ab4ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007fbb644e9523 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007fbb644e963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007fbb6753b039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007fbb674e694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007fbb6732fa99 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007fbb4f795976 in ?? () from /usr/lib/libQt5DBus.so.5
#7  0x00007fbb67339b45 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 5 (Thread 0x7fbb3f33d700 (LWP 18110)):
#0  0x00007fbb71030ffc in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fbb401191a4 in ?? () from /usr/lib/dri/i965_dri.so
#2  0x00007fbb40118e98 in ?? () from /usr/lib/dri/i965_dri.so
#3  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7fbb4d4aa700 (LWP 18108)):
#0  0x00007fbb64ab4ea9 in poll () from /usr/lib/libc.so.6
#1  0x00007fbb629e1180 in ?? () from /usr/lib/libxcb.so.1
#2  0x00007fbb629e2e4b in xcb_wait_for_event () from /usr/lib/libxcb.so.1
#3  0x00007fbb4fa5222a in ?? () from /usr/lib/libQt5XcbQpa.so.5
#4  0x00007fbb67339b45 in ?? () from /usr/lib/libQt5Core.so.5
#5  0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7fbb5078b700 (LWP 18107)):
#0  0x00007fbb71033a52 in do_futex_wait () from /usr/lib/libpthread.so.0
#1  0x00007fbb71033b63 in __new_sem_wait_slow () from /usr/lib/libpthread.so.0
#2  0x000055bcf0c3a23e in boost::sync::linux_::semaphore::priv_timed_wait (this=0x55bcf131ef80 <gResyncThreadSemaphore>, t=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost_sync/include/boost/sync/detail/semaphore/semaphore_posix.hpp:148
#3  0x000055bcf0c3a1f7 in boost::sync::linux_::semaphore::priv_timed_wait (this=0x55bcf131ef80 <gResyncThreadSemaphore>, dur=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost_sync/include/boost/sync/detail/semaphore/semaphore_posix.hpp:141
#4  0x000055bcf0c3ab6e in boost::sync::linux_::semaphore::wait_for<std::chrono::duration<long, std::ratio<1l, 1l> > > (this=0x55bcf131ef80 <gResyncThreadSemaphore>, duration=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost_sync/include/boost/sync/detail/semaphore/semaphore_posix.hpp:129
#5  0x000055bcf0c36e37 in resyncThread () at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrSched.cpp:412
#6  0x000055bcf0c3b700 in std::__invoke_impl<void, void (*)()> (__f=@0x55bcf2e94468: 0x55bcf0c36df2 <resyncThread()>) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x000055bcf0c3a840 in std::__invoke<void (*)()> (__fn=@0x55bcf2e94468: 0x55bcf0c36df2 <resyncThread()>) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000055bcf0c3d926 in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x55bcf2e94468) at /usr/include/c++/8.1.1/thread:234
#9  0x000055bcf0c3d876 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x55bcf2e94468) at /usr/include/c++/8.1.1/thread:243
#10 0x000055bcf0c3d788 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x55bcf2e94460) at /usr/include/c++/8.1.1/thread:186
#11 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#12 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#13 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7fbb50f8c700 (LWP 18106)):
#0  0x00007fbb64abf85f in epoll_wait () from /usr/lib/libc.so.6
#1  0x000055bcf0c20ca1 in boost::asio::detail::epoll_reactor::run (this=0x55bcf2f57200, usec=-1, ops=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/epoll_reactor.ipp:471
#2  0x000055bcf0c22461 in boost::asio::detail::scheduler::do_run_one (this=0x55bcf2ecd5d0, lock=..., this_thread=..., ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:385
#3  0x000055bcf0c21edf in boost::asio::detail::scheduler::run (this=0x55bcf2ecd5d0, ec=...) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/detail/impl/scheduler.ipp:154
#4  0x000055bcf0c22a03 in boost::asio::io_context::run (this=0x55bcf1341ec0 <ioService>) at /home/shimpe/development/supercollider/supercollider/external_libraries/boost/boost/asio/impl/io_context.ipp:62
#5  0x000055bcf0dfe521 in asioFunction () at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/SC_ComPort.cpp:54
#6  0x000055bcf0c3b700 in std::__invoke_impl<void, void (*)()> (__f=@0x55bcf2e95128: 0x55bcf0dfe4ee <asioFunction()>) at /usr/include/c++/8.1.1/bits/invoke.h:60
#7  0x000055bcf0c3a840 in std::__invoke<void (*)()> (__fn=@0x55bcf2e95128: 0x55bcf0dfe4ee <asioFunction()>) at /usr/include/c++/8.1.1/bits/invoke.h:95
#8  0x000055bcf0c3d926 in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x55bcf2e95128) at /usr/include/c++/8.1.1/thread:234
#9  0x000055bcf0c3d876 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x55bcf2e95128) at /usr/include/c++/8.1.1/thread:243
#10 0x000055bcf0c3d788 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x55bcf2e95120) at /usr/include/c++/8.1.1/thread:186
#11 0x00007fbb653ead4f in execute_native_thread_routine () at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#12 0x00007fbb7102b075 in start_thread () from /usr/lib/libpthread.so.0
#13 0x00007fbb64abf53f in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7fbb713acdc0 (LWP 18105)):
#0  0x00007fbb7103429c in __lll_lock_wait () from /usr/lib/libpthread.so.0
#1  0x00007fbb7102d7c4 in pthread_mutex_lock () from /usr/lib/libpthread.so.0
#2  0x000055bcf0c35d17 in __gthread_mutex_lock (__mutex=0x55bcf131ef20 <gLangMutex>) at /usr/include/c++/8.1.1/x86_64-pc-linux-gnu/bits/gthr-default.h:748
#3  0x000055bcf0c39e92 in std::timed_mutex::lock (this=0x55bcf131ef20 <gLangMutex>) at /usr/include/c++/8.1.1/mutex:192
#4  0x000055bcf0db46aa in SC_LanguageClient::lock (this=0x55bcf2f73bd0) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_LanguageClient.cpp:323
#5  0x000055bcf0c34139 in QtCollider::LangClient::tick (this=0x55bcf2f73bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:100
#6  0x000055bcf0c3439f in QtCollider::LangClient::timerEvent (this=0x55bcf2f73bc0, e=0x7fff3e81ee90) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:119
#7  0x00007fbb6751238b in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007fbb6825ba74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#9  0x00007fbb68263341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#10 0x000055bcf0e30cb5 in QcApplication::notify (this=0x55bcf2fa7cb0, object=0x55bcf2f73bc0, event=0x7fff3e81ee90) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:171
#11 0x00007fbb674e7cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007fbb6753a40a in QTimerInfoList::activateTimers() () from /usr/lib/libQt5Core.so.5
#13 0x00007fbb6753ac92 in ?? () from /usr/lib/libQt5Core.so.5
#14 0x00007fbb644e9368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#15 0x00007fbb644e95b1 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007fbb644e963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#17 0x00007fbb6753b039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#18 0x00007fbb4fae7722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#19 0x00007fbb674e694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#20 0x00007fbb45730ad7 in KJob::exec() () from /usr/lib/libKF5CoreAddons.so.5
#21 0x00007fbb4c1730e8 in KFileWidget::KFileWidget(QUrl const&, QWidget*) () from /usr/lib/libKF5KIOFileWidgets.so.5
#22 0x00007fbb4c6462d6 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#23 0x00007fbb4c646997 in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#24 0x00007fbb4c63b98e in ?? () from /usr/lib/qt/plugins/platformthemes/KDEPlasmaPlatformTheme.so
#25 0x00007fbb6845027e in QDialogPrivate::platformHelper() const () from /usr/lib/libQt5Widgets.so.5
#26 0x00007fbb68462a2d in QFileDialogPrivate::init(QUrl const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#27 0x00007fbb68462e52 in QFileDialog::QFileDialog(QWidget*, QString const&, QString const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#28 0x000055bcf0e82195 in QcFileDialog::QcFileDialog (this=0x7fbb48007450, fileMode=1, acceptMode=0, startDir=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/QcFileDialog.cpp:28
#29 0x000055bcf0e9df73 in QcFileDialog::qt_static_metacall (_o=0x0, _c=QMetaObject::CreateInstance, _id=0, _a=0x7fff3e81f660) at /home/shimpe/development/supercollider/build/lang/__/QtCollider/widgets/moc_QcFileDialog.cpp:101
#30 0x00007fbb674f1019 in QMetaObject::static_metacall(QMetaObject::Call, int, void**) const () from /usr/lib/libQt5Core.so.5
#31 0x00007fbb674f756d in QMetaObject::newInstance(QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () from /usr/lib/libQt5Core.so.5
#32 0x000055bcf0e82d01 in QcObjectFactory<QcFileDialog>::newInstance (this=0x55bcf2ea6050, scObject=0x55bcfc9518a8, arg=0x7fff3e81fb80) at /home/shimpe/development/supercollider/supercollider/QtCollider/widgets/../QcObjectFactory.h:87
#33 0x000055bcf0dcfd82 in QtCollider::LangPrimitive<QtCollider::QObject_New>::implementation (r=0x55bcf4d2efa8, a=0x55bcf4d2efb8, g=0x55bcf133d9e0 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:104
#34 0x000055bcf0dd6b4b in QtCollider::LangPrimitive<QtCollider::QObject_New>::mediate (g=0x55bcf133d9e0 <gVMGlobals>, i=3) at /home/shimpe/development/supercollider/supercollider/QtCollider/primitives/prim_QObject.cpp:61
#35 0x000055bcf0c48ef1 in doPrimitive (g=0x55bcf133d9e0 <gVMGlobals>, meth=0x55bcf555c980, numArgsPushed=3) at /home/shimpe/development/supercollider/supercollider/lang/LangPrimSource/PyrPrimitive.cpp:3837
#36 0x000055bcf0d50ba5 in Interpret (g=0x55bcf133d9e0 <gVMGlobals>) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:2671
#37 0x000055bcf0d3f8d6 in runInterpreter (g=0x55bcf133d9e0 <gVMGlobals>, selector=0x55bcf56715f8, numArgsPushed=2) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/PyrInterpreter3.cpp:127
#38 0x000055bcf0e31743 in QtCollider::runLang (receiver=0x55bcfca55198, method=0x55bcf56715f8, args=..., result=0x0) at /home/shimpe/development/supercollider/supercollider/QtCollider/Common.cpp:46
#39 0x000055bcf0e33742 in QObjectProxy::invokeScMethod (this=0x55bcf3662f50, method=0x55bcf56715f8, args=..., result=0x0, locked=false) at /home/shimpe/development/supercollider/supercollider/QtCollider/QObjectProxy.cpp:237
#40 0x000055bcf0e372c0 in QcMethodSignalHandler::react (this=0x55bcf36cb760, args=...) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:146
#41 0x000055bcf0e36f16 in QcSignalSpy::qt_metacall (this=0x55bcf36cb760, call=QMetaObject::InvokeMetaMethod, methodId=0, argData=0x7fbb48008380) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcSignalSpy.h:104
#42 0x00007fbb675123d2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#43 0x00007fbb6825ba74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#44 0x00007fbb68263341 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#45 0x000055bcf0e30cb5 in QcApplication::notify (this=0x55bcf2fa7cb0, object=0x55bcf36cb760, event=0x7fbb4800acf0) at /home/shimpe/development/supercollider/supercollider/QtCollider/QcApplication.cpp:171
#46 0x00007fbb674e7cb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#47 0x00007fbb674ead4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#48 0x00007fbb6753ba54 in ?? () from /usr/lib/libQt5Core.so.5
#49 0x00007fbb644e9368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#50 0x00007fbb644e95b1 in ?? () from /usr/lib/libglib-2.0.so.0
#51 0x00007fbb644e963e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#52 0x00007fbb6753b039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#53 0x00007fbb4fae7722 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#54 0x00007fbb674e694c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#55 0x00007fbb674eec46 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#56 0x000055bcf0c33aa7 in QtCollider::LangClient::commandLoop (this=0x55bcf2f73bc0) at /home/shimpe/development/supercollider/supercollider/QtCollider/LanguageClient.cpp:44
#57 0x000055bcf0c1aab4 in SC_TerminalClient::run (this=0x55bcf2f73bd0, argc=0, argv=0x7fff3e820b50) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/SC_TerminalClient.cpp:284
#58 0x000055bcf0c19ca2 in main (argc=5, argv=0x7fff3e820b28) at /home/shimpe/development/supercollider/supercollider/lang/LangSource/cmdLineFuncs.cpp:28

@shimpe
Copy link
Contributor Author

shimpe commented Sep 24, 2018

Is anyone still looking at this?

I find thread 34 suspicious because it appears to be present in all stack traces of hangups, and it seems to use a construct that (as far as I can see) is only used on linux platforms (string_popen_thread_func). Is it possible/worth trying to remove/replace this construct as is (presumably) done on other platforms?

#0 0x00007fbb64ab0934 in read () from /usr/lib/libc.so.6
#1 0x00007fbb64a42788 in __GI__IO_file_underflow () from /usr/lib/libc.so.6
#2 0x00007fbb64a438a2 in __GI__IO_default_uflow () from /usr/lib/libc.so.6
#3 0x00007fbb64a3721b in __GI__IO_getline_info () from /usr/lib/libc.so.6
#4 0x00007fbb64a3628b in fgets () from /usr/lib/libc.so.6
#5 0x000055bcf0d35f56 in string_popen_thread_func

@nhthn
Copy link
Contributor

nhthn commented Sep 24, 2018

i don't know how to fix this, and scott has been pretty busy recently. sorry :/

@nhthn nhthn modified the milestones: 3.10, 3.10.1 Nov 15, 2018
@nhthn nhthn modified the milestones: 3.10.1, 3.10.2 Jan 14, 2019
@nhthn nhthn modified the milestones: 3.10.2, 3.10.3 Feb 9, 2019
@nhthn nhthn modified the milestones: 3.10.3, 3.10.x Jun 8, 2019
shimpe added a commit to shimpe/supercollider that referenced this issue Aug 14, 2019
shimpe added a commit to shimpe/supercollider that referenced this issue Aug 15, 2019
@shimpe
Copy link
Contributor Author

shimpe commented Jun 6, 2021

A workaround seems to be to adapt the reproducer code as follows
(the delay argument to defer here is critical: don't leave it at the default of 0):

(s.waitForBoot({
	w = Window.new("test", Rect(0,0,400,400));
	w.layout_(HLayout(
		Button().string_("Load").action_({
			{
			| button |
			var filename = FileDialog.new(
				okFunc:{ "Ok".postln; },
				cancelFunc: { "Cancel".postln; },
				fileMode:1,
				acceptMode:0,
				stripResult:false,
				path:Platform.userHomeDir
			);
			}.defer(0.1)
		});
	));
	w.front;
});
)

@shimpe shimpe closed this as completed Jun 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issues that relate to unexpected/unwanted behavior. Don't use for PRs. comp: sclang sclang C++ implementation (primitives, etc.). for changes to class lib use "comp: class library" crash things which cause a crash in the interpreter, servers, or IDE. do not use for PRs os: Linux
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants