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

QWindowsOpenGLTester::testDesktopGL crashes with certain Intel drivers

    XMLWordPrintable

Details

    • Bug
    • Resolution: Out of scope
    • P1: Critical
    • None
    • 5.12.12
    • GUI: OpenGL
    • None
    • Windows 10
    • Windows

    Description

      It's top #1 crash in our app. We can't reproduce it on our side (I think some specific hardware/driver is required).

      The crash stack trace is following:

       

      Not Flagged	>	22548	0	Main Thread	Main Thread	0000000000000000
      0000000000000000()
      ig9icd64.dll!00007ffb9b5827fa()
      ig9icd64.dll!00007ffb9b5a007a()
      ig9icd64.dll!00007ffb9b5824e8()
      ig9icd64.dll!00007ffb9b5820b3()
      ig9icd64.dll!00007ffb9b5729c4()
      opengl32.dll!__DescribeDriverPixelFormat()
      opengl32.dll!LoadAvailableDrivers()
      opengl32.dll!__DescribePrimaryPixelFormat()
      opengl32.dll!wglNumHardwareFormats()
      opengl32.dll!wglDescribePixelFormat()
      opengl32.dll!wglChoosePixelFormat()
      gdi32full.dll!ChoosePixelFormat()
      qwindows.dll!QWindowsOpenGLTester::testDesktopGL() Line 446
      qwindows.dll!QWindowsOpenGLTester::detectSupportedRenderers(const GpuDescription & gpu, QWindowsOpenGLTester::Renderer requested) Line 321
      qwindows.dll!QWindowsOpenGLTester::supportedRenderers(QWindowsOpenGLTester::Renderer requested) Line 371
      qwindows.dll!QWindowsStaticOpenGLContext::doCreate() Line 427
      [Inline Frame] qwindows.dll!QWindowsStaticOpenGLContext::create() Line 456
      qwindows.dll!QWindowsIntegration::staticOpenGLContext() Line 491
      qwindows.dll!QWindowsIntegration::openGLModuleType() Line 477
      Qt5Quick.dll!QSGRenderLoop::instance() Line 200
      Qt5Quick.dll!QQuickWindowPrivate::init(QQuickWindow * c, QQuickRenderControl * control) Line 636
      Qt5Quick.dll!QQuickWindow::QQuickWindow(QQuickWindowPrivate & dd, QWindow * parent) Line 1388
      Qt5Quick.dll!QQuickWindowQmlImpl::QQuickWindowQmlImpl(QWindow * parent) Line 75
      Qt5QuickTemplates2.dll!QQuickApplicationWindow::QQuickApplicationWindow(QWindow * parent) Line 351
      qtquicktemplates2plugin.dll!QQmlPrivate::createInto<QQuickApplicationWindow>(void * memory) Line 124
      Qt5Qml.dll!QQmlType::create(QObject * * out, void * * memory, unsigned __int64 additionalMemory) Line 1045
      Qt5Qml.dll!QQmlObjectCreator::createInstance(int index, QObject * parent, bool isContextObject) Line 1166
      Qt5Qml.dll!QQmlObjectCreator::create(int subComponentIndex, QObject * parent, QQmlInstantiationInterrupt * interrupt) Line 203
      Qt5Qml.dll!QQmlObjectCreator::createInstance(int index, QObject * parent, bool isContextObject) Line 1202
      Qt5Qml.dll!QQmlObjectCreator::create(int subComponentIndex, QObject * parent, QQmlInstantiationInterrupt * interrupt) Line 203
      Qt5Qml.dll!QQmlComponentPrivate::beginCreate(QQmlContextData * context) Line 883
      Qt5Qml.dll!QQmlComponent::create(QQmlContext * context) Line 795
      Qt5Qml.dll!QQmlApplicationEnginePrivate::finishLoad(QQmlComponent * c) Line 137
      Qt5Qml.dll!QQmlApplicationEnginePrivate::startLoad(const QUrl & url, const QByteArray & data, bool dataFlag) Line 121
      Qt5Qml.dll!QQmlApplicationEngine::load(const QUrl & url) Line 266
      fdm.exe!AppQmlModule::initialize(bool)
      vmsclshared.dll!QtAbstractComplexModule::onModuleInitializeRunning(bool,bool)
      fdm.exe!AppModule::onModuleInitializeRunning(bool,bool)
      [Inline Frame] Qt5Core.dll!QtPrivate::QSlotObjectBase::call(QObject *) Line 394
      Qt5Core.dll!QMetaCallEvent::placeMetaCall(QObject * object) Line 525
      Qt5Core.dll!QObject::event(QEvent * e) Line 1261
      Qt5Widgets.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3652
      Qt5Widgets.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 3604
      Qt5Core.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1088
      [Inline Frame] Qt5Core.dll!QCoreApplication::sendEvent(QObject *) Line 1476
      Qt5Core.dll!QCoreApplicationPrivate::sendPostedEvents(QObject * receiver, int event_type, QThreadData * data) Line 1825
      qwindows.dll!QWindowsGuiEventDispatcher::sendPostedEvents() Line 82
      Qt5Core.dll!qt_internal_proc(HWND__ * hwnd, unsigned int message, unsigned __int64 wp, __int64 lp) Line 250
      user32.dll!UserCallWinProcCheckWow()
      user32.dll!DispatchMessageWorker()
      Qt5Core.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 650
      qwindows.dll!QWindowsGuiEventDispatcher::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 75
      [Inline Frame] Qt5Core.dll!QEventLoop::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag>) Line 138
      Qt5Core.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 225
      Qt5Core.dll!QCoreApplication::exec() Line 1389
      fdm.exe!App::runImpl(void)
      fdm.exe!App::run(bool)
      fdm.exe!main()
      fdm.exe!WinMain()
      [Inline Frame] fdm.exe!invoke_main() Line 102
      fdm.exe!__scrt_common_main_seh() Line 288
      kernel32.dll!BaseThreadInitThunk()
      ntdll.dll!RtlUserThreadStart()
      

      What are the possible workarounds?

       

       

       

      Attachments

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

        Activity

          People

            lagocs Laszlo Agocs
            alervd Alexander Dyagilev
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes