Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-99023

Deadlock on Window rendering

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Duplicate
    • Affects Version/s: 5.15.2
    • Fix Version/s: None
    • Component/s: Quick: SceneGraph
    • Labels:
      None
    • Environment:
      Windows 10, MSVC 2019
      Intel(R) HD Graphics 4600 (4.3.0 - Build 20.19.15.5126)
    • Platform/s:
      Windows

      Description

      This happens on remote Windows machine after I reconnect to it via RDP.

      Main thread:

       	[External Code]	
      >	Qt5Cored.dll!QWaitConditionPrivate::wait(QWaitConditionEvent * wce, unsigned long time) Line 117	C++
       	Qt5Cored.dll!QWaitCondition::wait(QMutex * mutex, unsigned long time) Line 178	C++
       	Qt5Cored.dll!QWaitCondition::wait(QMutex * mutex, QDeadlineTimer deadline) Line 189	C++
       	Qt5Quickd.dll!QSGThreadedRenderLoop::polishAndSync(QSGThreadedRenderLoop::Window * w, bool inExpose) Line 1605	C++
       	Qt5Quickd.dll!QSGThreadedRenderLoop::handleUpdateRequest(QQuickWindow * window) Line 1431	C++
       	Qt5Quickd.dll!QQuickWindow::event(QEvent * e) Line 1860	C++
       	Qt5Widgetsd.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3632	C++
       	Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 2972	C++
       	Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1063	C++
       	Qt5Cored.dll!QCoreApplication::sendEvent(QObject * receiver, QEvent * event) Line 1459	C++
       	Qt5Guid.dll!QPlatformWindow::deliverUpdateRequest() Line 790	C++
       	Qt5Guid.dll!QPlatformWindow::windowEvent(QEvent * event) Line 477	C++
       	qwindowsd.dll!QWindowsWindow::windowEvent(QEvent * event) Line 2393	C++
       	Qt5Guid.dll!QGuiApplicationPrivate::sendQWindowEventToQPlatformWindow(QWindow * window, QEvent * event) Line 1985	C++
       	Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 2874	C++
       	Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1063	C++
       	Qt5Cored.dll!QCoreApplication::sendEvent(QObject * receiver, QEvent * event) Line 1459	C++
       	Qt5Cored.dll!QEventDispatcherWin32Private::sendTimerEvent(int timerId) Line 442	C++
       	Qt5Cored.dll!QEventDispatcherWin32::event(QEvent * e) Line 1067	C++
       	Qt5Widgetsd.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3632	C++
       	Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 2972	C++
       	Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1063	C++
       	Qt5Cored.dll!QCoreApplication::sendEvent(QObject * receiver, QEvent * event) Line 1459	C++
       	Qt5Cored.dll!QCoreApplicationPrivate::sendPostedEvents(QObject * receiver, int event_type, QThreadData * data) Line 1817	C++
       	Qt5Cored.dll!QEventDispatcherWin32::sendPostedEvents() Line 1082	C++
       	qwindowsd.dll!QWindowsGuiEventDispatcher::sendPostedEvents() Line 81	C++
       	Qt5Cored.dll!qt_internal_proc(HWND__ * hwnd, unsigned int message, unsigned __int64 wp, __int64 lp) Line 268	C++
       	[External Code]	
       	Qt5Cored.dll!qt_message_fatal(QtMsgType __formal, const QMessageLogContext & context, const QString & message) Line 1880	C++
       	Qt5Cored.dll!QMessageLogger::fatal(const char * msg, ...) Line 894	C++
       	Qt5Quickd.dll!QSGRenderLoop::handleContextCreationFailure(QQuickWindow * window) Line 355	C++
       	Qt5Quickd.dll!QSGThreadedRenderLoop::handleExposure(QQuickWindow * window) Line 1341	C++
       	Qt5Quickd.dll!QSGThreadedRenderLoop::exposureChanged(QQuickWindow * window) Line 1270	C++
       	Qt5Quickd.dll!QQuickWindow::exposeEvent(QExposeEvent * __formal) Line 239	C++
       	Qt5Guid.dll!QWindow::event(QEvent * ev) Line 2413	C++
       	Qt5Quickd.dll!QQuickWindow::event(QEvent * e) Line 1904	C++
       	Qt5Widgetsd.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3632	C++
       	Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 2972	C++
       	Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1063	C++
       	Qt5Cored.dll!QCoreApplication::sendSpontaneousEvent(QObject * receiver, QEvent * event) Line 1471	C++
       	Qt5Guid.dll!QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent * e) Line 3259	C++
       	Qt5Guid.dll!QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent * e) Line 2071	C++
       	Qt5Guid.dll!QWindowSystemInterface::sendWindowSystemEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 1175	C++
       	Qt5Guid.dll!QWindowSystemInterface::flushWindowSystemEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 1140	C++
       	qwindowsd.dll!QWindowsWindow::handleWmPaint(HWND__ * hwnd, unsigned int message, unsigned __int64 __formal, __int64 __formal) Line 2115	C++
       	qwindowsd.dll!QWindowsContext::windowsProc(HWND__ * hwnd, unsigned int message, QtWindows::WindowsEventType et, unsigned __int64 wParam, __int64 lParam, __int64 * result, QWindowsWindow * * platformWindowPtr) Line 1337	C++
       	qwindowsd.dll!qWindowsWndProc(HWND__ * hwnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 1683	C++
       	[External Code]	
       	Qt5Cored.dll!qt_message_fatal(QtMsgType __formal, const QMessageLogContext & context, const QString & message) Line 1880	C++
       	Qt5Cored.dll!QMessageLogger::fatal(const char * msg, ...) Line 894	C++
       	Qt5Quickd.dll!QSGRenderLoop::handleContextCreationFailure(QQuickWindow * window) Line 355	C++
       	Qt5Quickd.dll!QSGThreadedRenderLoop::handleExposure(QQuickWindow * window) Line 1341	C++
       	Qt5Quickd.dll!QSGThreadedRenderLoop::exposureChanged(QQuickWindow * window) Line 1270	C++
       	Qt5Quickd.dll!QQuickWindow::exposeEvent(QExposeEvent * __formal) Line 239	C++
       	Qt5Guid.dll!QWindow::event(QEvent * ev) Line 2413	C++
       	Qt5Quickd.dll!QQuickWindow::event(QEvent * e) Line 1904	C++
       	Qt5Widgetsd.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3632	C++
       	Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 2972	C++
       	Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1063	C++
       	Qt5Cored.dll!QCoreApplication::sendSpontaneousEvent(QObject * receiver, QEvent * event) Line 1471	C++
       	Qt5Guid.dll!QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent * e) Line 3259	C++
       	Qt5Guid.dll!QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent * e) Line 2071	C++
       	Qt5Guid.dll!QWindowSystemInterface::sendWindowSystemEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 1175	C++
       	qwindowsd.dll!QWindowsGuiEventDispatcher::sendPostedEvents() Line 82	C++
       	Qt5Cored.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 530	C++
       	qwindowsd.dll!QWindowsGuiEventDispatcher::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 73	C++
       	Qt5Cored.dll!QEventLoop::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 140	C++
       	Qt5Cored.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 232	C++
       	Qt5Cored.dll!QCoreApplication::exec() Line 1371	C++
       	Qt5Guid.dll!QGuiApplication::exec() Line 1868	C++
       	Qt5Widgetsd.dll!QApplication::exec() Line 2825	C++
      ...
      

      QSGRenderThread:

       	[External Code]	
      >	Qt5Cored.dll!QWaitConditionPrivate::wait(QWaitConditionEvent * wce, unsigned long time) Line 117	C++
       	Qt5Cored.dll!QWaitCondition::wait(QMutex * mutex, unsigned long time) Line 178	C++
       	Qt5Cored.dll!QWaitCondition::wait(QMutex * mutex, QDeadlineTimer deadline) Line 189	C++
       	Qt5Quickd.dll!QSGRenderThreadEventQueue::takeEvent(bool wait) Line 258	C++
       	Qt5Quickd.dll!QSGRenderThread::processEventsAndWaitForMore() Line 936	C++
       	Qt5Quickd.dll!QSGRenderThread::run() Line 1054	C++
       	Qt5Cored.dll!QThreadPrivate::start(void * arg) Line 407	C++
       	[External Code]	
      

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              janichol Andy Nichols
              Reporter:
              studiosus Vladimir Belyavsky
              Votes:
              6 Vote for this issue
              Watchers:
              7 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Gerrit Reviews

                  There are no open Gerrit changes