Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.12.1
-
None
Description
A simple qml auto test shows quite a few leaks at exit:
==12304==ERROR: LeakSanitizer: detected memory leaksIndirect leak of 448 byte(s) in 4 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1be9a1 in QObject::QObject(QObject*) kernel/qobject.cpp:807 #2 0x7f808b175253 in QPluginLoader::QPluginLoader(QString const&, QObject*) plugin/qpluginloader.cpp:155 #3 0x7f808bf73d3b in QQmlImportDatabase::importDynamicPlugin(QString const&, QString const&, QString const&, int, QList<QQmlError>*) qml/qqmlimport.cpp:2196 #4 0x7f808bf75613 in QQmlImportsPrivate::importExtension(QString const&, QString const&, int, int, QQmlImportDatabase*, QQmlTypeLoaderQmldirContent const&, QList<QQmlError>*) qml/qqmlimport.cpp:1152 #5 0x7f808bf761cb in QQmlImportsPrivate::addLibraryImport(QString const&, QString const&, int, int, QString const&, QString const&, bool, QQmlImportDatabase*, QList<QQmlError>*) qml/qqmlimport.cpp:1493 #6 0x7f808bf76338 in QQmlImports::addLibraryImport(QQmlImportDatabase*, QString const&, QString const&, int, int, QString const&, QString const&, bool, QList<QQmlError>*) qml/qqmlimport.cpp:1736 #7 0x7f808bf3dc50 in QQmlTypeLoader::Blob::addImport(QV4::CompiledData::Import const*, QList<QQmlError>*) qml/qqmltypeloader.cpp:1433 #8 0x7f808bf3e44d in QQmlTypeData::continueLoadFromIR() qml/qqmltypeloader.cpp:2579 #9 0x7f808bf4095b in QQmlTypeData::dataReceived(QQmlDataBlob::SourceCodeData const&) qml/qqmltypeloader.cpp:2491 #10 0x7f808bf3a63c in QQmlTypeLoader::setData(QQmlDataBlob*, QQmlDataBlob::SourceCodeData const&) qml/qqmltypeloader.cpp:1302 #11 0x7f808bf3afcc in QQmlTypeLoader::setData(QQmlDataBlob*, QString const&) qml/qqmltypeloader.cpp:1292 #12 0x7f808bf3b2c9 in QQmlTypeLoader::loadThread(QQmlDataBlob*) qml/qqmltypeloader.cpp:1162 #13 0x7f808bf3b30c in QQmlTypeLoaderThread::loadThread(QQmlDataBlob*) qml/qqmltypeloader.cpp:905 #14 0x7f808bfaec07 in QQmlThreadPrivate::threadEvent() qml/ftw/qqmlthread.cpp:197 #15 0x7f808bfaf2b9 in QQmlThreadPrivate::event(QEvent*) qml/ftw/qqmlthread.cpp:135 #16 0x7f808b18ae27 in QCoreApplication::notifyInternal2(QObject*, QEvent*) kernel/qcoreapplication.cpp:1060 #17 0x7f808b18d856 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) kernel/qcoreapplication.cpp:1799 #18 0x7f808b1e2bb2 in postEventSourceDispatch kernel/qeventdispatcher_glib.cpp:276 #19 0x7f8087245f2d in g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df2d) #20 0x7f80872461c7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e1c7) #21 0x7f808724625b in g_main_context_iteration (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e25b) #22 0x7f808b1e21ee in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventdispatcher_glib.cpp:422 #23 0x7f808b189789 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventloop.cpp:225 #24 0x7f808afbc87b in QThread::exec() thread/qthread.cpp:531 #25 0x7f808bfae8e4 in QQmlThreadPrivate::run() qml/ftw/qqmlthread.cpp:148 #26 0x7f808afbddb2 in QThreadPrivate::start(void*) thread/qthread_unix.cpp:361 #27 0x7f808ae5ffa2 in start_thread /build/glibc-d2N3Ld/glibc-2.28/nptl/pthread_create.c:486 #28 0x7f8089f3182e in clone (/lib/x86_64-linux-gnu/libc.so.6+0xf982e)Indirect leak of 168 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808c4cecf0 in QOpenGLContextGroup::QOpenGLContextGroup() kernel/qopenglcontext.cpp:1413 #2 0x7f808c4d1a5a in QOpenGLContext::create() kernel/qopenglcontext.cpp:619 #3 0x7f808993b5e2 in QSGThreadedRenderLoop::handleExposure(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:974 #4 0x7f808993b91a in QSGThreadedRenderLoop::exposureChanged(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:916 #5 0x7f808c49ca0a in QWindow::event(QEvent*) kernel/qwindow.cpp:2335 #6 0x7f8089994884 in QQuickWindow::event(QEvent*) items/qquickwindow.cpp:1673 #7 0x7f808b18ae27 in QCoreApplication::notifyInternal2(QObject*, QEvent*) kernel/qcoreapplication.cpp:1060 #8 0x7f808c492b71 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) kernel/qguiapplication.cpp:3066 #9 0x7f808c492d9c in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) kernel/qguiapplication.cpp:1902 #10 0x7f808c46e9fa in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qwindowsysteminterface.cpp:1071 #11 0x7f8083019819 in xcbSourceDispatch /home/qt/work/qt/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105 #12 0x7f8087245f2d in g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df2d) #13 0x7f80872461c7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e1c7) #14 0x7f808724625b in g_main_context_iteration (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e25b) #15 0x7f808b1e21ee in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventdispatcher_glib.cpp:422 #16 0x7f808b18af48 in QCoreApplication::processEvents(QFlags<QEventLoop::ProcessEventsFlag>, int) kernel/qcoreapplication.cpp:1308 #17 0x7f808b1ddc59 in QTest::qWait(int) kernel/qtestsupport_core.cpp:104 #18 0x7f808d3dccfa in QuickTestResult::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:342 #19 0x7f808d3dd4c7 in QuickTestResult::qt_metacall(QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:500 #20 0x7f808bf54248 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const qml/qqmlpropertycache.cpp:1761 #21 0x7f808be5d8fc in CallMethod jsruntime/qv4qobjectwrapper.cpp:1213 #22 0x7f808be5ee8c in CallPrecise jsruntime/qv4qobjectwrapper.cpp:1475 #23 0x7f808be5fc0d in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4qobjectwrapper.cpp:2017 #24 0x7f808bee2dbc in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4functionobject_p.h:202 #25 0x7f808bee2dbc in QV4::Runtime::method_callProperty(QV4::ExecutionEngine*, QV4::Value*, int, QV4::Value*, int) jsruntime/qv4runtime.cpp:1391 #26 0x7f8058468ddc (<unknown module>)Indirect leak of 128 byte(s) in 1 object(s) allocated from: #0 0x7f808d6d9350 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xe9350) #1 0x7f808afcb7ac in QArrayData::allocate(unsigned long, unsigned long, unsigned long, QFlags<QArrayData::AllocationOption>) tools/qarraydata.cpp:118 #2 0x7f808b1bfbc6 in QTypedArrayData<QObjectPrivate::ConnectionList>::allocate(unsigned long, QFlags<QArrayData::AllocationOption>) ../../include/QtCore/../../src/corelib/tools/qarraydata.h:225 #3 0x7f808b1bfbc6 in QVector<QObjectPrivate::ConnectionList>::reallocData(int, int, QFlags<QArrayData::AllocationOption>) ../../include/QtCore/../../src/corelib/tools/qvector.h:563 #4 0x7f808b1b9782 in QVector<QObjectPrivate::ConnectionList>::resize(int) ../../include/QtCore/../../src/corelib/tools/qvector.h:422 #5 0x7f808b1b9782 in QObjectPrivate::addConnection(int, QObjectPrivate::Connection*) kernel/qobject.cpp:395 #6 0x7f808b1b9980 in QMetaObjectPrivate::connect(QObject const*, int, QMetaObject const*, QObject const*, int, QMetaObject const*, int, int*) kernel/qobject.cpp:3328 #7 0x7f808b1bd149 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) kernel/qobject.cpp:2786 #8 0x7f808998a88b in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:582 #9 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #10 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #11 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #12 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #13 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 128 byte(s) in 4 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808bf73d29 in QQmlImportDatabase::importDynamicPlugin(QString const&, QString const&, QString const&, int, QList<QQmlError>*) qml/qqmlimport.cpp:2196 #2 0x7f808bf75613 in QQmlImportsPrivate::importExtension(QString const&, QString const&, int, int, QQmlImportDatabase*, QQmlTypeLoaderQmldirContent const&, QList<QQmlError>*) qml/qqmlimport.cpp:1152 #3 0x7f808bf761cb in QQmlImportsPrivate::addLibraryImport(QString const&, QString const&, int, int, QString const&, QString const&, bool, QQmlImportDatabase*, QList<QQmlError>*) qml/qqmlimport.cpp:1493 #4 0x7f808bf76338 in QQmlImports::addLibraryImport(QQmlImportDatabase*, QString const&, QString const&, int, int, QString const&, QString const&, bool, QList<QQmlError>*) qml/qqmlimport.cpp:1736 #5 0x7f808bf3dc50 in QQmlTypeLoader::Blob::addImport(QV4::CompiledData::Import const*, QList<QQmlError>*) qml/qqmltypeloader.cpp:1433 #6 0x7f808bf3e44d in QQmlTypeData::continueLoadFromIR() qml/qqmltypeloader.cpp:2579 #7 0x7f808bf4095b in QQmlTypeData::dataReceived(QQmlDataBlob::SourceCodeData const&) qml/qqmltypeloader.cpp:2491 #8 0x7f808bf3a63c in QQmlTypeLoader::setData(QQmlDataBlob*, QQmlDataBlob::SourceCodeData const&) qml/qqmltypeloader.cpp:1302 #9 0x7f808bf3afcc in QQmlTypeLoader::setData(QQmlDataBlob*, QString const&) qml/qqmltypeloader.cpp:1292 #10 0x7f808bf3b2c9 in QQmlTypeLoader::loadThread(QQmlDataBlob*) qml/qqmltypeloader.cpp:1162 #11 0x7f808bf3b30c in QQmlTypeLoaderThread::loadThread(QQmlDataBlob*) qml/qqmltypeloader.cpp:905 #12 0x7f808bfaec07 in QQmlThreadPrivate::threadEvent() qml/ftw/qqmlthread.cpp:197 #13 0x7f808bfaf2b9 in QQmlThreadPrivate::event(QEvent*) qml/ftw/qqmlthread.cpp:135 #14 0x7f808b18ae27 in QCoreApplication::notifyInternal2(QObject*, QEvent*) kernel/qcoreapplication.cpp:1060 #15 0x7f808b18d856 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) kernel/qcoreapplication.cpp:1799 #16 0x7f808b1e2bb2 in postEventSourceDispatch kernel/qeventdispatcher_glib.cpp:276 #17 0x7f8087245f2d in g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df2d) #18 0x7f80872461c7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e1c7) #19 0x7f808724625b in g_main_context_iteration (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e25b) #20 0x7f808b1e21ee in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventdispatcher_glib.cpp:422 #21 0x7f808b189789 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventloop.cpp:225 #22 0x7f808afbc87b in QThread::exec() thread/qthread.cpp:531 #23 0x7f808bfae8e4 in QQmlThreadPrivate::run() qml/ftw/qqmlthread.cpp:148 #24 0x7f808afbddb2 in QThreadPrivate::start(void*) thread/qthread_unix.cpp:361 #25 0x7f808ae5ffa2 in start_thread /build/glibc-d2N3Ld/glibc-2.28/nptl/pthread_create.c:486 #26 0x7f8089f3182e in clone (/lib/x86_64-linux-gnu/libc.so.6+0xf982e)Indirect leak of 112 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1be9a1 in QObject::QObject(QObject*) kernel/qobject.cpp:807 #2 0x7f80898d9c12 in QQuickAnimatorController::QQuickAnimatorController(QQuickWindow*) util/qquickanimatorcontroller.cpp:59 #3 0x7f808998a85c in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:580 #4 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #5 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #6 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #7 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #8 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 112 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1be9a1 in QObject::QObject(QObject*) kernel/qobject.cpp:807 #2 0x7f8089913082 in QSGRenderContext::QSGRenderContext(QSGContext*) scenegraph/qsgcontext.cpp:327 #3 0x7f808992ead8 in QSGDefaultRenderContext::QSGDefaultRenderContext(QSGContext*) scenegraph/qsgdefaultrendercontext.cpp:63 #4 0x7f808992fba0 in QSGDefaultContext::createRenderContext() scenegraph/qsgdefaultcontext.cpp:180 #5 0x7f808998aab1 in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:574 #6 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #7 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #8 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #9 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #10 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 104 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808992fb92 in QSGDefaultContext::createRenderContext() scenegraph/qsgdefaultcontext.cpp:180 #2 0x7f808998aab1 in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:574 #3 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #4 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #5 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #6 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #7 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 72 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808998a84e in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:580 #2 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #3 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #4 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #5 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #6 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 72 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1b9904 in QMetaObjectPrivate::connect(QObject const*, int, QMetaObject const*, QObject const*, int, QMetaObject const*, int, int*) kernel/qobject.cpp:3316 #2 0x7f808b1bd149 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) kernel/qobject.cpp:2786 #3 0x7f808998a8e9 in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:584 #4 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #5 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #6 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #7 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #8 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 72 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1b9904 in QMetaObjectPrivate::connect(QObject const*, int, QMetaObject const*, QObject const*, int, QMetaObject const*, int, int*) kernel/qobject.cpp:3316 #2 0x7f808b1bd149 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) kernel/qobject.cpp:2786 #3 0x7f808998a8ba in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:583 #4 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #5 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #6 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #7 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #8 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 72 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1b9904 in QMetaObjectPrivate::connect(QObject const*, int, QMetaObject const*, QObject const*, int, QMetaObject const*, int, int*) kernel/qobject.cpp:3316 #2 0x7f808b1bd149 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) kernel/qobject.cpp:2786 #3 0x7f808998a88b in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:582 #4 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #5 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #6 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #7 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #8 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7f808d6d9350 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xe9350) #1 0x7f808b019ad1 in QListData::detach_grow(int*, int) tools/qlist.cpp:79 #2 0x7f808c4d23dc in QList<QOpenGLContext*>::detach_helper_grow(int, int) ../../include/QtCore/../../src/corelib/tools/qlist.h:759 #3 0x7f808c4d1994 in QList<QOpenGLContext*>::append(QOpenGLContext* const&) ../../include/QtCore/../../src/corelib/tools/qlist.h:585 #4 0x7f808c4d1994 in QList<QOpenGLContext*>::operator<<(QOpenGLContext* const&) ../../include/QtCore/../../src/corelib/tools/qlist.h:388 #5 0x7f808c4d1994 in QOpenGLContextGroupPrivate::addContext(QOpenGLContext*) kernel/qopenglcontext.cpp:1450 #6 0x7f808c4d1a70 in QOpenGLContext::create() kernel/qopenglcontext.cpp:620 #7 0x7f808993b5e2 in QSGThreadedRenderLoop::handleExposure(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:974 #8 0x7f808993b91a in QSGThreadedRenderLoop::exposureChanged(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:916 #9 0x7f808c49ca0a in QWindow::event(QEvent*) kernel/qwindow.cpp:2335 #10 0x7f8089994884 in QQuickWindow::event(QEvent*) items/qquickwindow.cpp:1673 #11 0x7f808b18ae27 in QCoreApplication::notifyInternal2(QObject*, QEvent*) kernel/qcoreapplication.cpp:1060 #12 0x7f808c492b71 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) kernel/qguiapplication.cpp:3066 #13 0x7f808c492d9c in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) kernel/qguiapplication.cpp:1902 #14 0x7f808c46e9fa in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qwindowsysteminterface.cpp:1071 #15 0x7f8083019819 in xcbSourceDispatch /home/qt/work/qt/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105 #16 0x7f8087245f2d in g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df2d) #17 0x7f80872461c7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e1c7) #18 0x7f808724625b in g_main_context_iteration (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e25b) #19 0x7f808b1e21ee in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventdispatcher_glib.cpp:422 #20 0x7f808b18af48 in QCoreApplication::processEvents(QFlags<QEventLoop::ProcessEventsFlag>, int) kernel/qcoreapplication.cpp:1308 #21 0x7f808b1ddc59 in QTest::qWait(int) kernel/qtestsupport_core.cpp:104 #22 0x7f808d3dccfa in QuickTestResult::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:342 #23 0x7f808d3dd4c7 in QuickTestResult::qt_metacall(QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:500 #24 0x7f808bf54248 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const qml/qqmlpropertycache.cpp:1761 #25 0x7f808be5d8fc in CallMethod jsruntime/qv4qobjectwrapper.cpp:1213 #26 0x7f808be5ee8c in CallPrecise jsruntime/qv4qobjectwrapper.cpp:1475 #27 0x7f808be5fc0d in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4qobjectwrapper.cpp:2017 #28 0x7f808bee2dbc in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4functionobject_p.h:202 #29 0x7f808bee2dbc in QV4::Runtime::method_callProperty(QV4::ExecutionEngine*, QV4::Value*, int, QV4::Value*, int) jsruntime/qv4runtime.cpp:1391 #30 0x7f8058468ddc (<unknown module>)Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808afbdf61 in QMutex::QMutex(QMutex::RecursionMode) thread/qmutex.cpp:182 #2 0x7f808c4ced32 in QOpenGLContextGroupPrivate::QOpenGLContextGroupPrivate() kernel/qopenglcontext_p.h:136 #3 0x7f808c4ced32 in QOpenGLContextGroup::QOpenGLContextGroup() kernel/qopenglcontext.cpp:1413 #4 0x7f808c4d1a5a in QOpenGLContext::create() kernel/qopenglcontext.cpp:619 #5 0x7f808993b5e2 in QSGThreadedRenderLoop::handleExposure(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:974 #6 0x7f808993b91a in QSGThreadedRenderLoop::exposureChanged(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:916 #7 0x7f808c49ca0a in QWindow::event(QEvent*) kernel/qwindow.cpp:2335 #8 0x7f8089994884 in QQuickWindow::event(QEvent*) items/qquickwindow.cpp:1673 #9 0x7f808b18ae27 in QCoreApplication::notifyInternal2(QObject*, QEvent*) kernel/qcoreapplication.cpp:1060 #10 0x7f808c492b71 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) kernel/qguiapplication.cpp:3066 #11 0x7f808c492d9c in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) kernel/qguiapplication.cpp:1902 #12 0x7f808c46e9fa in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qwindowsysteminterface.cpp:1071 #13 0x7f8083019819 in xcbSourceDispatch /home/qt/work/qt/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105 #14 0x7f8087245f2d in g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df2d) #15 0x7f80872461c7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e1c7) #16 0x7f808724625b in g_main_context_iteration (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e25b) #17 0x7f808b1e21ee in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventdispatcher_glib.cpp:422 #18 0x7f808b18af48 in QCoreApplication::processEvents(QFlags<QEventLoop::ProcessEventsFlag>, int) kernel/qcoreapplication.cpp:1308 #19 0x7f808b1ddc59 in QTest::qWait(int) kernel/qtestsupport_core.cpp:104 #20 0x7f808d3dccfa in QuickTestResult::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:342 #21 0x7f808d3dd4c7 in QuickTestResult::qt_metacall(QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:500 #22 0x7f808bf54248 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const qml/qqmlpropertycache.cpp:1761 #23 0x7f808be5d8fc in CallMethod jsruntime/qv4qobjectwrapper.cpp:1213 #24 0x7f808be5ee8c in CallPrecise jsruntime/qv4qobjectwrapper.cpp:1475 #25 0x7f808be5fc0d in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4qobjectwrapper.cpp:2017 #26 0x7f808bee2dbc in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4functionobject_p.h:202 #27 0x7f808bee2dbc in QV4::Runtime::method_callProperty(QV4::ExecutionEngine*, QV4::Value*, int, QV4::Value*, int) jsruntime/qv4runtime.cpp:1391 #28 0x7f8058468ddc (<unknown module>)Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b1b97b9 in QObjectPrivate::addConnection(int, QObjectPrivate::Connection*) kernel/qobject.cpp:393 #2 0x7f808b1b9980 in QMetaObjectPrivate::connect(QObject const*, int, QMetaObject const*, QObject const*, int, QMetaObject const*, int, int*) kernel/qobject.cpp:3328 #3 0x7f808b1bd149 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) kernel/qobject.cpp:2786 #4 0x7f808998a88b in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:582 #5 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #6 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #7 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #8 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #9 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)Indirect leak of 16 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808c4d1a4f in QOpenGLContext::create() kernel/qopenglcontext.cpp:619 #2 0x7f808993b5e2 in QSGThreadedRenderLoop::handleExposure(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:974 #3 0x7f808993b91a in QSGThreadedRenderLoop::exposureChanged(QQuickWindow*) scenegraph/qsgthreadedrenderloop.cpp:916 #4 0x7f808c49ca0a in QWindow::event(QEvent*) kernel/qwindow.cpp:2335 #5 0x7f8089994884 in QQuickWindow::event(QEvent*) items/qquickwindow.cpp:1673 #6 0x7f808b18ae27 in QCoreApplication::notifyInternal2(QObject*, QEvent*) kernel/qcoreapplication.cpp:1060 #7 0x7f808c492b71 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) kernel/qguiapplication.cpp:3066 #8 0x7f808c492d9c in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) kernel/qguiapplication.cpp:1902 #9 0x7f808c46e9fa in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qwindowsysteminterface.cpp:1071 #10 0x7f8083019819 in xcbSourceDispatch /home/qt/work/qt/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105 #11 0x7f8087245f2d in g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df2d) #12 0x7f80872461c7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e1c7) #13 0x7f808724625b in g_main_context_iteration (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4e25b) #14 0x7f808b1e21ee in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) kernel/qeventdispatcher_glib.cpp:422 #15 0x7f808b18af48 in QCoreApplication::processEvents(QFlags<QEventLoop::ProcessEventsFlag>, int) kernel/qcoreapplication.cpp:1308 #16 0x7f808b1ddc59 in QTest::qWait(int) kernel/qtestsupport_core.cpp:104 #17 0x7f808d3dccfa in QuickTestResult::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:342 #18 0x7f808d3dd4c7 in QuickTestResult::qt_metacall(QMetaObject::Call, int, void**) .moc/moc_quicktestresult_p.cpp:500 #19 0x7f808bf54248 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const qml/qqmlpropertycache.cpp:1761 #20 0x7f808be5d8fc in CallMethod jsruntime/qv4qobjectwrapper.cpp:1213 #21 0x7f808be5ee8c in CallPrecise jsruntime/qv4qobjectwrapper.cpp:1475 #22 0x7f808be5fc0d in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4qobjectwrapper.cpp:2017 #23 0x7f808bee2dbc in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const jsruntime/qv4functionobject_p.h:202 #24 0x7f808bee2dbc in QV4::Runtime::method_callProperty(QV4::ExecutionEngine*, QV4::Value*, int, QV4::Value*, int) jsruntime/qv4runtime.cpp:1391 #25 0x7f8058468ddc (<unknown module>)Indirect leak of 16 byte(s) in 1 object(s) allocated from: #0 0x7f808d6dad80 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead80) #1 0x7f808b03a1c5 in QtSharedPointer::ExternalRefCountData::getAndRef(QObject const*) tools/qsharedpointer.cpp:1383 #2 0x7f808991309f in QWeakPointer<QObject>::QWeakPointer<QSGContext>(QSGContext*, bool) /home/qt/work/install/include/QtCore/qsharedpointer_impl.h:688 #3 0x7f808991309f in QPointer<QSGContext>::QPointer(QSGContext*) /home/qt/work/install/include/QtCore/qpointer.h:71 #4 0x7f808991309f in QSGRenderContext::QSGRenderContext(QSGContext*) scenegraph/qsgcontext.cpp:327 #5 0x7f808992ead8 in QSGDefaultRenderContext::QSGDefaultRenderContext(QSGContext*) scenegraph/qsgdefaultrendercontext.cpp:63 #6 0x7f808992fba0 in QSGDefaultContext::createRenderContext() scenegraph/qsgdefaultcontext.cpp:180 #7 0x7f808998aab1 in QQuickWindowPrivate::init(QQuickWindow*, QQuickRenderControl*) items/qquickwindow.cpp:574 #8 0x7f8089a1d195 in QQuickView::QQuickView(QQmlEngine*, QWindow*) items/qquickview.cpp:190 #9 0x7f808d3cfb5a in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/qt/work/qt/qtdeclarative/src/qmltest/quicktest.cpp:524 #10 0x558f2f7bcc4e in main /home/bogdan/work/mytest/tests/auto/common/main.cpp:21 #11 0x7f8089e5c09a in __libc_start_main ../csu/libc-start.c:308 #12 0x558f2f7b3519 in _start (/home/bogdan/build-mytest/tests/auto/mapping/mapping+0x16519)----------------------------------------------------- Suppressions used: count bytes template 6 1536 *radeonsi_dri.so* -----------------------------------------------------
The problem is that we can't use LSAN_OPTIONS=suppressions=/path/to/qt/known/leaks to suppress qt known leaks, because without ASAN_OPTIONS=fast_unwind_on_malloc=0 set we get <unknown module> in call stacks. Setting ASAN_OPTIONS=fast_unwind_on_malloc=0 is a no go, because it slowdowns the test a LOT.
Attachments
1.
|
Warnings on program shutdown | Closed | Ulf Hermann |