Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.12.2
-
None
-
Nvidia Jetson TX2, B2Qt, Qt5.12.2 with texture sharing patches
-
-
280d0e557eabe9410632edf32ed46e712535c45b (qt/qtwayland/dev) dbe1775f7e1b71696ee64f8b23c998f787e6e7ed (qt/qtwayland/wip/texturesharing-5.12)
Description
To reproduce, run the attached QML file (with qmlscene) on an Nvidia Jetson TX2 board. It implements a simple Wayland compositor and uses the texture sharing extension. It calls Qt.quit() after 3s, which results in a crash. (Note that interrupting with Ctrl-C does not result in a crash). Here is the backtrace:
#0 QThreadStorageData::get (this=this@entry=0x0) at qt5/qtbase/src/corelib/thread/qthreadstorage.cpp:122 #1 0x0000007fb7109910 in qThreadStorage_localData<QGuiGLThreadContext> (d=...) at qt5/qtbase/src/corelib/thread/qthreadstorage.h:71 #2 QThreadStorage<QGuiGLThreadContext*>::localData (this=<optimized out>) at qt5/qtbase/src/corelib/thread/qthreadstorage.h:145 #3 QOpenGLContext::currentContext () at qt5/qtbase/src/gui/kernel/qopenglcontext.cpp:421 #4 0x0000007face75bf4 in CurrentContext::CurrentContext (this=0x7ffffff860) at qt5/qtwayland/src/hardwareintegration/compositor/vulkan-server/vulkanserverbufferintegration.cpp:101 #5 VulkanServerBuffer::releaseOpenGlTexture (this=0x703190) at qt5/qtwayland/src/hardwareintegration/compositor/vulkan-server/vulkanserverbufferintegration.cpp:259 #6 0x0000007faed69818 in SharedTextureFactory::~SharedTextureFactory (this=0x7fa00051e0, __in_chrg=<optimized out>) at qt5/qtwayland/src/compositor/extensions/qwltexturesharingextension.cpp:135 #7 SharedTextureFactory::~SharedTextureFactory (this=0x7fa00051e0, __in_chrg=<optimized out>) at qt5/qtwayland/src/compositor/extensions/qwltexturesharingextension.cpp:136 #8 0x0000007fb7c80af8 in QQuickPixmapData::~QQuickPixmapData (this=0x5acdb0, __in_chrg=<optimized out>) at qt5/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:295 #9 QQuickPixmapStore::shrinkCache (this=this@entry=0x7fb7fd07a8 <(anonymous namespace)::Q_QGS_pixmapStore::innerFunction()::holder>, remove=remove@entry=20) at qt5/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:1117 #10 0x0000007fb7c81cf4 in QQuickPixmapStore::~QQuickPixmapStore (this=0x7fb7fd07a8 <(anonymous namespace)::Q_QGS_pixmapStore::innerFunction()::holder>, __in_chrg=<optimized out>) at qt5/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:1045 #11 0x0000007fb7c81e5c in (anonymous namespace)::Q_QGS_pixmapStore::Holder::~Holder (this=<optimized out>, __in_chrg=<optimized out>) at qt5/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:1008 #12 0x0000007fb5ec772c in ?? () from /lib/libc.so.6
Attachments
For Gerrit Dashboard: QTBUG-76053 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
263832,4 | Don't crash at application exit | dev | qt/qtwayland | Status: MERGED | -1 | 0 |
263970,2 | Don't crash at application exit | wip/texturesharing-5.12 | qt/qtwayland | Status: MERGED | +2 | 0 |