Qt application freezes
-
Hello,
I have a big problem with my qt app.
(Qt version: 5.9.2, CentOS 7.5, gcc version: 4.8.5)My qt app was working in long running, but suddenly it froze completely and didn’t come back later. I had to restart it to start working. It hasn’t frozen again after restarting it.
Looking at the WCHAN field in the ps command, I see it was waiting on futex. Here is the call stack. I’ve read a lot of posts in Qt Bug Tracker and Qt forum, but I can’t find any solutions to my qt app freeze problem. Any ideas are appreciated.
Thread 3 (Thread 0x7f3ab92778c0 (LWP 27803)): #0 0x00007f3ab7dc1995 in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib64/libpthread.so.0 #1 0x00007f3ab1d3f2c9 in _xcb_conn_wait () from /usr/lib64/libxcb.so.1 #2 0x00007f3ab1d40b9f in wait_for_reply () from /usr/lib64/libxcb.so.1 #3 0x00007f3ab1d40cb2 in xcb_wait_for_reply () from /usr/lib64/libxcb.so.1 #4 0x00007f3aa7f44ac2 in xkb_x11_keymap_new_from_device () from /usr/lib64/libQt5XcbQpa.so.5 #5 0x00007f3aa7f02695 in QXcbKeyboard::updateKeymap() () from /usr/lib64/libQt5XcbQpa.so.5 #6 0x00007f3aa7f02ac1 in QXcbKeyboard::handleMappingNotifyEvent(void const*) () from /usr/lib64/libQt5XcbQpa.so.5 #7 0x00007f3aa7efbf0f in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () from /usr/lib64/libQt5XcbQpa.so.5 #8 0x00007f3aa7efddee in QXcbConnection::processXcbEvents() () from /usr/lib64/libQt5XcbQpa.so.5 #9 0x00007f3ab84be81e in QObject::event(QEvent*) () from /usr/lib64/libQt5Core.so.5 #10 0x00007f3ab8d3b7ec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5 #11 0x00007f3ab8d42e38 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5 #12 0x00007f3ab84952e6 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5 #13 0x00007f3ab8497c03 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQt5Core.so.5 #14 0x00007f3ab84e4113 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/libQt5Core.so.5 #15 0x00007f3ab3b99969 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #16 0x00007f3ab3b99cc8 in g_main_context_iterate.isra.22 () from /usr/lib64/libglib-2.0.so.0 #17 0x00007f3ab3b99d7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #18 0x00007f3ab84e3abc in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5 #19 0x00007f3ab8493deb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5 #20 0x00007f3ab849c234 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5 #21 0x000000000044001d in main (argc=1, argv=<optimized out>) at main.cxx:112 -
@rtyuio said in Qt application freezes:
_xcb_conn_wait
looks like it's waiting on a connection. You won't know what connection unless it freezes again and you can trigger a core dump for analysis...assumming you are using full debug versions of the app and libraries.
-
R rtyuio referenced this topic on