-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.9.2
-
None
-
Windows 11
There is Q_ASSERT(hasPendingUpdateRequest()) in QPlatformWindow::deliverUpdateRequest() which is triggered for me in debug Qt build on graphics device lost.
17:16:04: Debugging C:\Users\vladimir.belyavsky\Documents\Qt_projects\untitled\build\Dev_Qt-Debug\appuntitled.exe ... VSyncService: Failed to find adapter (via EnumAdapters1), skipping D3D11: Removing Device. Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11 Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3D11CreateDeviceAndSwapChain Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3D11CreateDeviceAndSwapChain Failed to create buffer: COM error 0x887a0005: The GPU device instance has been suspended. Use GetDeviceRemovedReason to determine the appropriate action. Failed to build vertex/index buffer of size 64 Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11 Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3D11CreateDeviceAndSwapChain Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3D11CreateDeviceAndSwapChain Failed to create buffer: COM error 0x887a0005: The GPU device instance has been suspended. Use GetDeviceRemovedReason to determine the appropriate action. Failed to build vertex/index buffer of size 12 Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11 Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3D11CreateDeviceAndSwapChain Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3D11CreateDeviceAndSwapChain Failed to create buffer: COM error 0x887a0005: The GPU device instance has been suspended. Use GetDeviceRemovedReason to determine the appropriate action. Failed to build uniform buffer of size 68 bytes Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in dxgi!DXGIReportAdapterConfiguration Device loss detected in Present() Graphics device lost, cleaning up scenegraph and releasing RHI Exception at 0x7fff8960001c, code: 0xe06d7363: C++ exception, flags=0x81 (first chance) in d3d11!D3DKMTWaitForVerticalBlankEvent ASSERT: "hasPendingUpdateRequest()" in file E:\Qt5\qtbase\src\gui\kernel\qplatformwindow.cpp, line 816 Debug Error! Program: E:\Qt-dev-build\qtbase\bin\Qt6Cored.dll Module: 6.11.0 File: E:\Qt5\qtbase\src\gui\kernel\qplatformwindow.cpp Line: 816 ASSERT: "hasPendingUpdateRequest()" in file E:\Qt5\qtbase\src\gui\kernel\qplatformwindow.cpp, line 816
Call stack:
1 qt_maybe_message_fatal<QString &> qlogging.cpp 2159 0x7fff05a4d25c 2 qt_message qlogging.cpp 412 0x7fff05a4d118 3 QMessageLogger::fatal qlogging.cpp 902 0x7fff05a4a254 4 qt_assert qassert.cpp 109 0x7fff05a02549 5 QPlatformWindow::deliverUpdateRequest qplatformwindow.cpp 816 0x7ffe80e96a26 6 ``QWindowsWindow::requestUpdate'::`8'::<lambda_1>::operator()'::`8'::<lambda_1>::operator() qwindowswindow.cpp 3993 0x7fff056a234c 7 `QtPrivate::FunctorCall<std::integer_sequence<unsigned __int64>,QtPrivate::List<>,void,``QWindowsWindow::requestUpdate'::`8'::<lambda_1>::operator()'::`8'::<lambda_1>>::call'::`2'::<lambda_1>::operator() qobjectdefs_impl.h 116 0x7fff056a2707 8 QtPrivate::FunctorCallBase::call_internal<void,`QtPrivate::FunctorCall<std::integer_sequence<unsigned __int64>,QtPrivate::List<>,void,``QWindowsWindow::requestUpdate'::`8'::<lambda_1>::operator()'::`8'::<lambda_1>>::call'::`2'::<lambda_1>> qobjectdefs_impl.h 65 0x7fff056a9259 9 QtPrivate::FunctorCall<std::integer_sequence<unsigned __int64>,QtPrivate::List<>,void,``QWindowsWindow::requestUpdate'::`8'::<lambda_1>::operator()'::`8'::<lambda_1>>::call qobjectdefs_impl.h 115 0x7fff056a26db 10 QtPrivate::FunctorCallable<``QWindowsWindow::requestUpdate'::`8'::<lambda_1>::operator()'::`8'::<lambda_1>>::call<QtPrivate::List<>,void> qobjectdefs_impl.h 337 0x7fff056a9223 11 QtPrivate::QCallableObject<``QWindowsWindow::requestUpdate'::`8'::<lambda_1>::operator()'::`8'::<lambda_1>,QtPrivate::List<>,void>::impl qobjectdefs_impl.h 547 0x7fff056a25d0 12 QtPrivate::QSlotObjectBase::call qobjectdefs_impl.h 461 0x7fff059eb143 13 QMetaCallEvent::placeMetaCall qobject.cpp 544 0x7fff05c41a1f 14 QObject::event qobject.cpp 1465 0x7fff05c389cd 15 QWindow::event qwindow.cpp 2788 0x7ffe80ecebf4 16 QQuickWindow::event qquickwindow.cpp 1654 0x7ffe88898b46 17 QQuickWindowQmlImpl::event qquickwindowmodule.cpp 153 0x7ffe888cc680 18 QCoreApplicationPrivate::notify_helper qcoreapplication.cpp 1281 0x7fff05b752e8 19 doNotify qcoreapplication.cpp 1210 0x7fff05b77e15 20 QCoreApplication::notify qcoreapplication.cpp 1194 0x7fff05b7200a 21 QGuiApplication::notify qguiapplication.cpp 2057 0x7ffe80dae976 22 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1109 0x7fff05b73cb5 23 QCoreApplication::sendEvent qcoreapplication.cpp 1550 0x7fff05b7172d 24 QCoreApplicationPrivate::sendPostedEvents qcoreapplication.cpp 1904 0x7fff05b762f0 25 QEventDispatcherWin32::sendPostedEvents qeventdispatcher_win.cpp 925 0x7fff0600e730 26 QWindowsGuiEventDispatcher::sendPostedEvents qwindowsguieventdispatcher.cpp 44 0x7ffe816020f5 27 QEventDispatcherWin32::processEvents qeventdispatcher_win.cpp 483 0x7fff0600c82f 28 QWindowsGuiEventDispatcher::processEvents qwindowsguieventdispatcher.cpp 36 0x7ffe816020ab 29 QEventLoop::processEvents qeventloop.cpp 105 0x7fff05b923dc 30 QEventLoop::exec qeventloop.cpp 186 0x7fff05b926e6 31 QCoreApplication::exec qcoreapplication.cpp 1452 0x7fff05b714b6 32 QGuiApplication::exec qguiapplication.cpp 1974 0x7ffe80dae8ca 33 main main.cpp 20 0x7ff6680a34fc 34 qtEntryPoint qtentrypoint_win.cpp 45 0x7ff6680af5ca 35 WinMain qtentrypoint_win.cpp 64 0x7ff6680af47e
Can be reproduced with trivial QML sample code:
import QtQuick Window { width: 640 height: 480 visible: true TextInput { anchors.fill: parent } }