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

Crash in QRhiResourceUpdateBatch::merge

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • None
    • 6.4.2, 6.5.0 RC
    • Quick: SceneGraph
    • cc4fbbc5e (dev), 999f56b0f (6.6), 935c60a93 (6.5)

    Description

      KDE System Settings built against Qt6 crashes deep in QtQuick/RHI stuff when switching between modules.

      Can be reprocuded both with 6.4.2 and current dev (qtbase 690761a4ad6bd9accb4b038d9d398ca7924037ec, qtdeclarative 15662b6a1aee9e9d10764a303abfa32beb355e87)

      See this KDE bugreport: https://bugs.kde.org/show_bug.cgi?id=466781

       

       

      #0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
      #1  0x00007f19250afec3 in __pthread_kill_internal (signo=11, threadid=<optimized out>) at pthread_kill.c:78
      #2  0x00007f192505fa76 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
      #3  0x00007f1927d228ac in KCrash::defaultCrashHandler(int) (sig=11) at /home/nico/kde6/src/kcrash/src/kcrash.cpp:616
      #4  0x00007f192505fb20 in <signal handler called> () at /lib64/libc.so.6
      #5  0x00007f19261cbf11 in QRhiResourceUpdateBatchPrivate::merge(QRhiResourceUpdateBatchPrivate*) (this=0x7f18f815b010, other=0x1f883f78948f889) at /home/nico/workspace/qt6/qtbase/src/gui/rhi/qrhi.cpp:6305
      #6  0x00007f19261cc41b in QRhiResourceUpdateBatch::merge(QRhiResourceUpdateBatch*) (this=this@entry=0x26f0da0, other=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/gui/rhi/qrhi.cpp:5966
      #7  0x00007f1924b207cc in QSGRhiTextureGlyphCache::commitResourceUpdates(QRhiResourceUpdateBatch*) (this=this@entry=0x2b26ca0, mergeInto=0x26f0da0)
          at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/qsgrhitextureglyphcache.cpp:222
      #8  0x00007f1924aeda74 in QSGTextMaskRhiShader::updateUniformData(QSGMaterialShader::RenderState&, QSGMaterial*, QSGMaterial*)
          (this=<optimized out>, state=..., newMaterial=newMaterial@entry=0x2182460, oldMaterial=oldMaterial@entry=0x0) at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/qsgdefaultglyphnode_p.cpp:131
      #9  0x00007f1924aede6a in QSG24BitTextMaskRhiShader::updateUniformData(QSGMaterialShader::RenderState&, QSGMaterial*, QSGMaterial*) (this=<optimized out>, state=..., newMaterial=0x2182460, oldMaterial=0x0)
          at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/qsgdefaultglyphnode_p.cpp:212
      #10 0x00007f1924ab3569 in QSGBatchRenderer::Renderer::updateMaterialDynamicData(QSGBatchRenderer::ShaderManagerShader*, QSGMaterialShader::RenderState&, QSGMaterial*, QSGBatchRenderer::Batch const*, QSGBatchRenderer::Element*, int, int) (this=this@entry=0x2c7bc90, sms=sms@entry=0x3f967c0, renderState=..., material=material@entry=0x2182460, batch=batch@entry=0x35e6590, e=e@entry=0x2c80740, ubufOffset=0, ubufRegionSize=156)
          at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:2835
      #11 0x00007f1924ab4a79 in QSGBatchRenderer::Renderer::prepareRenderMergedBatch(QSGBatchRenderer::Batch*, QSGBatchRenderer::Renderer::PreparedRenderBatch*) (this=0x2c7bc90, batch=0x35e6590, renderBatch=0x7fffba256fa0)
          at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:3134
      #12 0x00007f1924ab6b05 in QSGBatchRenderer::Renderer::prepareRenderPass(QSGBatchRenderer::Renderer::RenderPassContext*) (this=this@entry=0x2c7bc90, ctx=ctx@entry=0x2c7bfd8)
          at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:3769
      #13 0x00007f1924ab8bf2 in QSGBatchRenderer::Renderer::render() (this=0x2c7bc90) at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:3525
      #14 QSGBatchRenderer::Renderer::render() (this=0x2c7bc90) at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:3518
      #15 0x00007f1924aceec1 in QSGRenderer::renderScene() (this=0x2c7bc90) at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgrenderer.cpp:140
      #16 QSGRenderer::renderScene() (this=0x2c7bc90) at /home/nico/workspace/qt6/qtdeclarative/src/quick/scenegraph/coreapi/qsgrenderer.cpp:115
      #17 0x00007f1924a7be45 in QQuickWindowPrivate::renderSceneGraph() (this=0x1f68160) at /home/nico/workspace/qt6/qtdeclarative/src/quick/items/qquickwindow.cpp:659
      #18 0x00007f1924a1e419 in QQuickRenderControl::render() (this=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/quick/items/qquickrendercontrol.cpp:434
      #19 0x00007f19266df9e0 in QQuickWidgetPrivate::render(bool) (this=this@entry=0x1ea0e00, needsSync=needsSync@entry=true) at /home/nico/workspace/qt6/qtdeclarative/src/quickwidgets/qquickwidget.cpp:365
      #20 0x00007f19266dfb8b in QQuickWidgetPrivate::renderSceneGraph() (this=0x1ea0e00) at /home/nico/workspace/qt6/qtdeclarative/src/quickwidgets/qquickwidget.cpp:404
      #21 0x00007f192578efcd in QObject::event(QEvent*) (this=0x1f84e60, e=0x7fffba257300) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1412
      #22 0x00007f1927192a71 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x1f84e60, e=0x7fffba257300) at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:3284
      #23 0x00007f19257425f8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x1f84e60, event=0x7fffba257300) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1115
      #24 0x00007f1925742779 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1533
      #25 0x00007f19258d05e1 in QTimerInfoList::activateTimers() (this=0x15af0d0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:594
      #26 0x00007f19259d7034 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:149
      #27 0x00007f192435ec7f in g_main_dispatch (context=0x7f190c005040) at ../glib/gmain.c:3454
      #28 g_main_context_dispatch (context=0x7f190c005040) at ../glib/gmain.c:4172
      #29 0x00007f19243b5118 in g_main_context_iterate.constprop.0 (context=0x7f190c005040, block=1, dispatch=1, self=<optimized out>) at ../glib/gmain.c:4248
      #30 0x00007f192435bf00 in g_main_context_iteration (context=0x7f190c005040, may_block=1) at ../glib/gmain.c:4313
      #31 0x00007f19259d738c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x1566800, flags=...) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393
      #32 0x00007f192574d943 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffba2575a0, flags=..., flags@entry=...) at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:34
      #33 0x00007f192574a134 in QCoreApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:74
      #34 0x00007f1925faeedc in QGuiApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1888
      #35 0x00007f19271929e5 in QApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:2564
      #36 0x000000000040e8f5 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde6/src/systemsettings/app/main.cpp:190

       

       

      Attachments

        Issue Links

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

          Activity

            People

              davidedmundson David Edmundson
              nicolasfella Nicolas Fella
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes