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

[Mac] Sporadic crash in QSGRenderThread - CVMetalTextureCache::bufferBackingNotInUse

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P1: Critical
    • None
    • 6.5.1
    • Multimedia
    • None
    • macOS 13.4.1
      Qt 6.5.1
      MacBook Pro 2021, Apple M1 Pro
    • macOS

    Description

      No specific steps, supposedly when playing video with QML VideoOutput and MediaPlayer, inside Loader, and setting Loader's active to false.

      Crashed Thread: 36 QSGRenderThread

      Exception Type: EXC_BAD_ACCESS (SIGSEGV)
      Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000
      Exception Codes: 0x0000000000000001, 0x0000000000000000

      Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11
      Terminating Process: exc handler [45069]

      Thread 0:: CrBrowserMain Dispatch queue: com.apple.main-thread
      0   ???                           	    0x7ff89be669a8 ???
      1   libsystem_kernel.dylib        	    0x7ff80c232882 __psynch_mutexwait + 10
      2   libsystem_pthread.dylib       	    0x7ff80c26cb14 _pthread_mutex_firstfit_lock_wait + 76
      3   libsystem_pthread.dylib       	    0x7ff80c26a921 _pthread_mutex_firstfit_lock_slow + 214
      4   CoreVideo                     	    0x7ff81486f616 CVLockingBunchPair::cleanup() + 22
      5   CoreVideo                     	    0x7ff81486d990 CVBufferPool::finalize() + 106
      6   CoreFoundation                	    0x7ff80c41638c _CFRelease + 285
      7   libdarwinmediaplugin.dylib    	       0x1908cd6c8 AVFVideoSinkInterface::setRhi(QRhi*) + 72
      8   QtMultimediaQuick             	       0x1252132f3 QQuickVideoOutput::itemChange(QQuickItem::ItemChange, QQuickItem::ItemChangeData const&) + 595
      9   QtQuick                       	       0x12371fe4f QQuickItemPrivate::derefWindow() + 671
      10  QtQuick                       	       0x12371f4fc QQuickItem::setParentItem(QQuickItem*) + 828
      11  QtQuick                       	       0x123751f94 QQuickLoader::setActive(bool) + 260
      12  QtQml                         	       0x12731d3c4 GenericBinding<1>::write(QV4::Value const&, bool, QFlags<QQmlPropertyData::WriteFlag>) + 228
      13  QtQml                         	       0x127317f38 QQmlBinding::doUpdate(QQmlJavaScriptExpression::DeleteWatcher const&, QFlags<QQmlPropertyData::WriteFlag>, QV4::Scope&) + 392
      14  QtQml                         	       0x127315ddb QQmlBinding::update(QFlags<QQmlPropertyData::WriteFlag>) + 299
      
      Thread 36 Crashed:: QSGRenderThread
      0   ???                           	       0x118268f50 ???
      1   CoreVideo                     	    0x7ff81486891a CVMetalTextureCache::bufferBackingNotInUse(CVBufferBacking*) + 194
      2   libsystem_platform.dylib      	    0x7ff80c29c603 _sigtramp + 51
      3   CoreVideo                     	    0x7ff81486891a CVMetalTextureCache::bufferBackingNotInUse(CVBufferBacking*) + 194
      4   CoreVideo                     	    0x7ff8148687b8 CVBufferBacking::releaseUsage() + 82
      5   CoreVideo                     	    0x7ff814881441 CVMetalTextureBacking::releaseUsage() + 33
      6   CoreVideo                     	    0x7ff814868746 CVMetalTexture::finalize() + 42
      7   CoreFoundation                	    0x7ff80c41638c _CFRelease + 285
      8   libdarwinmediaplugin.dylib    	       0x1908cdec2 AVFVideoBuffer::~AVFVideoBuffer() + 66
      9   libdarwinmediaplugin.dylib    	       0x1908cdf7e AVFVideoBuffer::~AVFVideoBuffer() + 14
      10  QtMultimedia                  	       0x120fe0f82 QVideoFrame::operator=(QVideoFrame const&) + 66
      11  QtMultimediaQuick             	       0x12521479a QSGVideoMaterial::updateTextures(QRhi*, QRhiResourceUpdateBatch*) + 90
      12  QtMultimediaQuick             	       0x12521493f QSGVideoMaterialRhiShader::updateUniformData(QSGMaterialShader::RenderState&, QSGMaterial*, QSGMaterial*) + 191
      13  QtQuick                       	       0x12380f7b8 QSGBatchRenderer::Renderer::updateMaterialDynamicData(QSGBatchRenderer::ShaderManagerShader*, QSGMaterialShader::RenderState&, QSGMaterial*, QSGBatchRenderer::Batch const*, QSGBatchRenderer::Element*, int, int) + 200
      14  QtQuick                       	       0x1238111ca QSGBatchRenderer::Renderer::prepareRenderMergedBatch(QSGBatchRenderer::Batch*, QSGBatchRenderer::Renderer::PreparedRenderBatch*) + 922
      15  QtQuick                       	       0x12381418b QSGBatchRenderer::Renderer::prepareRenderPass(QSGBatchRenderer::Renderer::RenderPassContext*) + 3195
      16  QtQuick                       	       0x123813487 QSGBatchRenderer::Renderer::render() + 39
      17  QtQuick                       	       0x12382b9de QSGRenderer::renderScene() + 302
      18  QtQuick                       	       0x1237d6a7d QQuickWindowPrivate::renderSceneGraph() + 893
      19  QtQuick                       	       0x1239845b7 QSGRenderThread::syncAndRender() + 967
      20  QtQuick                       	       0x123985551 QSGRenderThread::run() + 273
      21  QtCore                        	       0x1284513a3 QThreadPrivate::start(void*) + 323
      22  libsystem_pthread.dylib       	    0x7ff80c26f1d3 _pthread_start + 125
      23  libsystem_pthread.dylib       	    0x7ff80c26abd3 thread_start + 15
      

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-115186
          # Subject Branch Project Status CR V

          Activity

            People

              tpochep Timur Pocheptsov
              sergei.nevdakh Sergei Nevdakh
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There is 1 open Gerrit change