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

assert in qv4executableallocator.cpp

    XMLWordPrintable

Details

    • 48d93e0d854b3f9a2486a2393fee38496fd57bd9

    Description

      I get this assertion during application shutdown. I'm sadly not able to reduce it to a simple example at the moment.

      [F] qt_assert:2096 - ASSERT: "allocation->free" in file jsruntime/qv4executableallocator.cpp, line 188
      QMutex: destroying locked mutex
      [Thread 0x4c90a3f0 (LWP 16161) exited]
      [Thread 0x5290d3f0 (LWP 16176) exited]
      
      Program received signal SIGABRT, Aborted.
      [Switching to Thread 0x44bbc3f0 (LWP 16152)]
      0x412afb88 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:67
      67      ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
      (gdb) bt
      #0  0x412afb88 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:67
      #1  0x412b3910 in __GI_abort () at abort.c:91
      #2  0x40d75e88 in qt_message_fatal (message=..., context=...) at global/qlogging.cpp:1060
      #3  QMessageLogger::fatal (this=<optimized out>, msg=0x40fc9b38 "ASSERT: \"%s\" in file %s, line %d") at global/qlogging.cpp:389
      #4  0x40d7233c in qt_assert (assertion=0x407e1830 "allocation->free", file=<optimized out>, line=<optimized out>) at global/qglobal.cpp:2096
      #5  0x406bd1c8 in QV4::ExecutableAllocator::allocate (this=0x2a0cce88, size=<optimized out>) at jsruntime/qv4executableallocator.cpp:188
      #6  0x4064de10 in ExecutableMemoryHandle (allocator=<optimized out>, this=0x44c91278, size=768) at ../3rdparty/masm/stubs/ExecutableAllocator.h:66
      #7  allocate (size=768, this=0x44bbab40) at ../3rdparty/masm/stubs/ExecutableAllocator.h:97
      #8  JSC::LinkBuffer::linkCode (this=0x44bbaa48, ownerUID=<optimized out>, effort=<optimized out>) at ../3rdparty/masm/assembler/LinkBuffer.cpp:79
      #9  0x4064254c in LinkBuffer (effort=JSC::JITCompilationMustSucceed, ownerUID=0x0, masm=0x4740b7c8, globalData=..., this=0x44bbaa48) at ../3rdparty/masm/assembler/LinkBuffer.h:92
      #10 QV4::JIT::Assembler::link (this=0x4740b7c8, codeSize=0x44bbac40) at jit/qv4isel_masm.cpp:147
      #11 0x40644000 in QV4::JIT::InstructionSelection::run (this=0x46bd21d0, functionIndex=39) at jit/qv4isel_masm.cpp:367
      #12 0x405ecaa6 in QV4::EvalInstructionSelection::compile (this=0x46bd21d8, generateUnitData=<optimized out>) at compiler/qv4isel_p.cpp:85
      #13 0x4061dbf8 in QQmlTypeCompiler::compile (this=0x44bbafd4) at compiler/qqmltypecompiler.cpp:229
      #14 0x4071275e in QQmlTypeData::compile (this=0x46bb3d50) at qml/qqmltypeloader.cpp:2341
      #15 0x40714592 in QQmlTypeData::done (this=0x46bb3d50) at qml/qqmltypeloader.cpp:2164
      #16 0x4070f3be in tryDone (this=0x46bb3d50) at qml/qqmltypeloader.cpp:615
      #17 QQmlDataBlob::tryDone (this=0x46bb3d50) at qml/qqmltypeloader.cpp:606
      #18 0x4070f5d2 in QQmlDataLoader::setData (this=<optimized out>, blob=0x46bb3d50, d=...) at qml/qqmltypeloader.cpp:1208
      #19 0x4070f638 in QQmlDataLoader::setData (this=0x2a0d57e4, blob=0x46bb3d50, file=<optimized out>) at qml/qqmltypeloader.cpp:1190
      #20 0x407130fe in QQmlDataLoader::loadThread (this=0x2a0d57e4, blob=0x46bb3d50) at qml/qqmltypeloader.cpp:1068
      #21 0x407132d6 in QQmlDataLoader::load (this=0x2a0d57e4, blob=0x46bb3d50, mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:932
      #22 0x40713f20 in QQmlTypeLoader::getType (this=0x2a0d57e4, url=..., mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:1606
      #23 0x40715ba2 in QQmlTypeData::resolveTypes (this=0x474309c8) at qml/qqmltypeloader.cpp:2452
      #24 0x4071628e in allDependenciesDone (this=0x474309c8) at qml/qqmltypeloader.cpp:2312
      #25 QQmlTypeData::allDependenciesDone (this=0x474309c8) at qml/qqmltypeloader.cpp:2288
      #26 0x4070f5fe in QQmlDataLoader::setData (this=<optimized out>, blob=0x474309c8, d=...) at qml/qqmltypeloader.cpp:1201
      #27 0x4070f638 in QQmlDataLoader::setData (this=0x2a0d57e4, blob=0x474309c8, file=<optimized out>) at qml/qqmltypeloader.cpp:1190
      #28 0x407130fe in QQmlDataLoader::loadThread (this=0x2a0d57e4, blob=0x474309c8) at qml/qqmltypeloader.cpp:1068
      #29 0x407132d6 in QQmlDataLoader::load (this=0x2a0d57e4, blob=0x474309c8, mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:932
      #30 0x40713f20 in QQmlTypeLoader::getType (this=0x2a0d57e4, url=..., mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:1606
      #31 0x40715ba2 in QQmlTypeData::resolveTypes (this=0x46bc22a8) at qml/qqmltypeloader.cpp:2452
      #32 0x4071628e in allDependenciesDone (this=0x46bc22a8) at qml/qqmltypeloader.cpp:2312
      #33 QQmlTypeData::allDependenciesDone (this=0x46bc22a8) at qml/qqmltypeloader.cpp:2288
      #34 0x4070f5fe in QQmlDataLoader::setData (this=<optimized out>, blob=0x46bc22a8, d=...) at qml/qqmltypeloader.cpp:1201
      #35 0x4070f638 in QQmlDataLoader::setData (this=0x2a0d57e4, blob=0x46bc22a8, file=<optimized out>) at qml/qqmltypeloader.cpp:1190
      #36 0x407130fe in QQmlDataLoader::loadThread (this=0x2a0d57e4, blob=0x46bc22a8) at qml/qqmltypeloader.cpp:1068
      #37 0x407132d6 in QQmlDataLoader::load (this=0x2a0d57e4, blob=0x46bc22a8, mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:932
      #38 0x40713f20 in QQmlTypeLoader::getType (this=0x2a0d57e4, url=..., mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:1606
      #39 0x40715ba2 in QQmlTypeData::resolveTypes (this=0x44c54c68) at qml/qqmltypeloader.cpp:2452
      #40 0x4071628e in allDependenciesDone (this=0x44c54c68) at qml/qqmltypeloader.cpp:2312
      #41 QQmlTypeData::allDependenciesDone (this=0x44c54c68) at qml/qqmltypeloader.cpp:2288
      #42 0x4070f5fe in QQmlDataLoader::setData (this=<optimized out>, blob=0x44c54c68, d=...) at qml/qqmltypeloader.cpp:1201
      #43 0x4070f638 in QQmlDataLoader::setData (this=0x2a0d57e4, blob=0x44c54c68, file=<optimized out>) at qml/qqmltypeloader.cpp:1190
      #44 0x407130fe in QQmlDataLoader::loadThread (this=0x2a0d57e4, blob=0x44c54c68) at qml/qqmltypeloader.cpp:1068
      #45 0x407132d6 in QQmlDataLoader::load (this=0x2a0d57e4, blob=0x44c54c68, mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:932
      #46 0x40713f20 in QQmlTypeLoader::getType (this=0x2a0d57e4, url=..., mode=QQmlDataLoader::PreferSynchronous) at qml/qqmltypeloader.cpp:1606
      #47 0x40715ba2 in QQmlTypeData::resolveTypes (this=0x2a37f7a0) at qml/qqmltypeloader.cpp:2452
      #48 0x4071628e in allDependenciesDone (this=0x2a37f7a0) at qml/qqmltypeloader.cpp:2312
      #49 QQmlTypeData::allDependenciesDone (this=0x2a37f7a0) at qml/qqmltypeloader.cpp:2288
      #50 0x4070f5fe in QQmlDataLoader::setData (this=<optimized out>, blob=0x2a37f7a0, d=...) at qml/qqmltypeloader.cpp:1201
      #51 0x4070f638 in QQmlDataLoader::setData (this=0x2a0d57e4, blob=0x2a37f7a0, file=<optimized out>) at qml/qqmltypeloader.cpp:1190
      #52 0x407130fe in QQmlDataLoader::loadThread (this=0x2a0d57e4, blob=0x2a37f7a0) at qml/qqmltypeloader.cpp:1068
      #53 0x40713f4a in QQmlDataLoaderThread::loadThread (this=<optimized out>, b=0x2a37f7a0) at qml/qqmltypeloader.cpp:816
      #54 0x40716478 in void QQmlThread::postMethodToThread<QQmlDataBlob*, QQmlDataBlob*, QQmlDataLoaderThread>(void (QQmlDataLoaderThread::*)(QQmlDataBlob*), QQmlDataBlob* const&)::I::call(QQmlThread*) ()
          at ../../include/QtQml/5.2.2/QtQml/private/../../../../../src/qml/qml/ftw/qqmlthread_p.h:250
      #55 0x40754bd0 in QQmlThreadPrivate::threadEvent (this=0x2a0e0020) at qml/ftw/qqmlthread.cpp:198
      #56 0x4075505c in QQmlThreadPrivate::event (this=0x2a0e0020, e=<optimized out>) at qml/ftw/qqmlthread.cpp:136
      #57 0x40f1ba4c in QCoreApplicationPrivate::notify_helper (this=0x2a0161b0, receiver=0x2a0e0020, event=0x2a399230) at kernel/qcoreapplication.cpp:998
      #58 0x40f1bb1c in QCoreApplication::notify (this=<optimized out>, receiver=0x2a0e0020, event=0x2a399230) at kernel/qcoreapplication.cpp:943
      #59 0x40f1b738 in QCoreApplication::notifyInternal (this=0x2a016320, receiver=<optimized out>, event=0x2a399230) at kernel/qcoreapplication.cpp:881
      #60 0x40f1e660 in sendEvent (event=0x2a399230, receiver=0x2a0e0020) at ../../src/corelib/kernel/qcoreapplication.h:232
      #61 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x2a0e01a0) at kernel/qcoreapplication.cpp:1485
      #62 0x40f788d0 in postEventSourceDispatch (s=0x44c00db0) at kernel/qeventdispatcher_glib.cpp:279
      #63 0x4020db20 in g_main_dispatch (context=0x44c004d8) at gmain.c:3066
      #64 g_main_context_dispatch (context=0x44c004d8) at gmain.c:3642
      #65 0x4020de24 in g_main_context_iterate (context=0x44c004d8, block=1, dispatch=1, self=<optimized out>) at gmain.c:3713
      #66 0x4020df28 in g_main_context_iterate (self=<optimized out>, dispatch=1, block=1, context=0x44c004d8) at gmain.c:3680
      ---Type <return> to continue, or q <return> to quit--- 
      #67 g_main_context_iteration (context=0x44c004d8, may_block=1) at gmain.c:3774
      #68 0x40f78cd4 in QEventDispatcherGlib::processEvents (this=0x44c00468, flags=...) at kernel/qeventdispatcher_glib.cpp:432
      #69 0x40f199f0 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:136
      #70 0x40f19e28 in QEventLoop::exec (this=0x44bbbd34, flags=...) at kernel/qeventloop.cpp:212
      #71 0x40d81290 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:509
      #72 0x40d86920 in QThreadPrivate::start (arg=0x2a0e0020) at thread/qthread_unix.cpp:345
      #73 0x4111cd14 in start_thread (arg=0x44bbc3f0) at pthread_create.c:310
      #74 0x41357bb8 in ?? () from /lib/libc.so.6
      #75 0x41357bb8 in ?? () from /lib/libc.so.6
      Backtrace stopped: previous frame identical to this frame (corrupt stack?)
      (gdb) 
      

      Attachments

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

        Activity

          People

            sletta Gunnar Sletta
            sletta Gunnar Sletta
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes