Menu

#25 Intermittent crash when inserting plugin during playback

git_head
closed
nobody
None
2015-02-01
2012-12-01
James Stone
No

This happened a couple of times when the system was fairly stressed (high CPU). I have downloaded svn and enabled debugging symbols to see if I can get it to happen again while running in gdb. Please let me know if there is anything else I should be doing.

Discussion

  • James Stone

    James Stone - 2012-12-01

    OK - here is one - this was before I even inserted a new plugin.

    qtractorLadspaPluginType[0x88c0170]::open() filename="/usr/lib/ladspa/xfade_1915.so" index=0
    qtractorLadspaPluginType[0x919f958]::open() filename="/usr/lib/ladspa/xfade_1915.so" index=1
    qtractorLadspaPluginType[0x91ac218]::open() filename="/usr/lib/ladspa/zm1_1428.so" index=0
    qtractorLadspaPluginType[0x91a9868]::open() filename="/usr/lib/dssi/calf.so" index=0
    
    Program received signal SIGSEGV, Segmentation fault.
    0xb6befcf0 in QString::fromLatin1_helper(char const*, int) ()
       from /usr/lib/i386-linux-gnu/libQtCore.so.4
    (gdb) bt
    #0  0xb6befcf0 in QString::fromLatin1_helper(char const*, int) ()
    

    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #1 0xb6bf4c6c in QString::fromAscii_helper(char const, int) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #2 0xb6bf4cae in QString::fromAscii(char const
    , int) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #3 0x0806ec65 in QString::operator= (this=0x91a9870,
    ch=0xaf9596d4 <Address 0xaf9596d4="" out="" of="" bounds="">)
    at /usr/include/qt4/QtCore/qstring.h:425
    #4 0x080ce559 in qtractorLadspaPluginType::open (this=0x91a9868)
    at qtractorLadspaPlugin.cpp:51
    #5 0x080afb28 in qtractorDssiPluginType::open (this=0x91a9868)
    at qtractorDssiPlugin.cpp:805
    #6 0x0813f4e5 in qtractorPluginFile::getTypes (this=0x8fa4bd8, path=...,
    typeHint=qtractorPluginType::Any) at qtractorPlugin.cpp:310
    #7 0x082518b6 in qtractorPluginSelectForm::refresh (this=0xbfffca78)
    at qtractorPluginSelectForm.cpp:281
    #8 0x08251703 in qtractorPluginSelectForm::typeHintChanged (this=0xbfffca78,
    iTypeHint=0) at qtractorPluginSelectForm.cpp:245
    #9 0x08279a9e in qtractorPluginSelectForm::qt_static_metacall (_o=0xbfffca78,
    _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfffbbc8)
    at .moc/moc_qtractorPluginSelectForm.cpp:55
    #10 0xb6ccd6b1 in QMetaObject::activate(QObject, QMetaObject const, int, void---Type <return> to continue, or q <return> to quit---
    ) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #11 0xb739c785 in QComboBox::activated(int) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #12 0xb739c844 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #13 0xb739dcd2 in ?? () from /usr/lib/i386-linux- gnu/libQtGui.so.4
    #14 0xb6ccd6b1 in QMetaObject::activate(QObject, QMetaObject const, int, void) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #15 0xb768c025 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #16 0xb7396f8f in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #17 0xb6cb6b16 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject, QEvent) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #18 0xb6f52ea2 in QApplicationPrivate::notify_helper(QObject, QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #19 0xb6f59024 in QApplication::notify(QObject, QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #20 0xb6cb697e in QCoreApplication::notifyInternal(QObject, QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #21 0xb6f53e95 in QApplicationPrivate::sendMouseEvent(QWidget, QMouseEvent, QWidget, QWidget, QWidget
    , QPointer<QWidget>&, bool) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #22 0xb6fe07d2 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #23 0xb6fdec0d in QApplication::x11ProcessEvent(_XEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #24 0xb700beac in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #25 0xb64f4d86 in g_main_context_dispatch ()
    from /lib/i386-linux-gnu/libglib-2.0.so.0
    #26 0xb64f5125 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
    #27 0xb64f5201 in g_main_context_iteration ()
    from /lib/i386-linux-gnu/libglib-2.0.so.0
    #28 0xb6ce9887 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #29 0xb700baaa in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #30 0xb6cb550d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #31 0xb6cb57a9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #32 0xb74a50d9 in QDialog::exec() () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #33 0x0814cada in qtractorPluginListView::addPlugin (this=0x8804428)
    at qtractorPluginListView.cpp:455
    #34 0x08274cec in qtractorPluginListView::qt_static_metacall (_o=0x8804428,
    _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0xbfffcbf8)
    at .moc/moc_qtractorPluginListView.cpp:87
    #35 0xb6ccd6b1 in QMetaObject::activate(QObject
    , QMetaObject const, int, void) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #36 0xb6f4b9bd in QAction::triggered(bool) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #37 0xb6f4bc5b in QAction::activate(QAction::ActionEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #38 0xb740d453 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #39 0xb741432f in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #40 0xb7417015 in QMenu::mouseReleaseEvent(QMouseEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #41 0xb6fad1ac in QWidget::event(QEvent
    ) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #42 0xb7415a9c in QMenu::event(QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #43 0xb6f52ed4 in QApplicationPrivate::notify_helper(QObject
    , QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #44 0xb6f59024 in QApplication::notify(QObject
    , QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #45 0xb6cb697e in QCoreApplication::notifyInternal(QObject
    , QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #46 0xb6f53e95 in QApplicationPrivate::sendMouseEvent(QWidget
    , QMouseEvent, QWidget, QWidget*, QWidget
    , QPointer<QWidget>&, bool) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #47 0xb6fe07d2 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #48 0xb6fdec0d in QApplication::x11ProcessEvent(_XEvent
    ) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #49 0xb700beac in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #50 0xb64f4d86 in g_main_context_dispatch ()
    from /lib/i386-linux-gnu/libglib-2.0.so.0
    #51 0xb64f5125 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
    #52 0xb64f5201 in g_main_context_iteration ()
    from /lib/i386-linux-gnu/libglib-2.0.so.0
    #53 0xb6ce9887 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #54 0xb700baaa in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #55 0xb6cb550d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #56 0xb6cb57a9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #57 0xb7411b87 in QMenu::exec(QPoint const&, QAction) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #58 0x081505d8 in qtractorPluginListView::contextMenuEvent (this=0x8804428,
    pContextMenuEvent=0xbfffe42c) at qtractorPluginListView.cpp:1499
    #59 0xb6fadf43 in QWidget::event(QEvent
    ) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #60 0xb73cae55 in QFrame::event(QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #61 0xb745dab1 in QAbstractScrollArea::viewportEvent(QEvent
    ) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #62 0xb7503acc in QAbstractItemView::viewportEvent(QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #63 0xb74601d6 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #64 0xb6cb6b16 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject
    , QEvent) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #65 0xb6f52ea2 in QApplicationPrivate::notify_helper(QObject
    , QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #66 0xb6f58960 in QApplication::notify(QObject
    , QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #67 0xb6cb697e in QCoreApplication::notifyInternal(QObject
    , QEvent) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #68 0xb6fe00f5 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #69 0xb6fdec0d in QApplication::x11ProcessEvent(_XEvent
    ) ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #70 0xb700beac in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #71 0xb64f4d86 in g_main_context_dispatch ()
    from /lib/i386-linux-gnu/libglib-2.0.so.0
    #72 0xb64f5125 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
    #73 0xb64f5201 in g_main_context_iteration ()
    from /lib/i386-linux-gnu/libglib-2.0.so.0
    #74 0xb6ce9887 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #75 0xb700baaa in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #76 0xb6cb550d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag->) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #77 0xb6cb57a9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #78 0xb6cbaeba in QCoreApplication::exec() ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #79 0xb6f50a74 in QApplication::exec() ()
    from /usr/lib/i386-linux-gnu/libQtGui.so.4
    #80 0x0806ea97 in main (argc=1, argv=0xbffff284) at qtractor.cpp:404

     

    Last edit: James Stone 2012-12-01
  • James Stone

    James Stone - 2012-12-01

    The preceding was basically when playing a track, click insert plugin, then click on the "any" dropbox to show all plugins (ladspa only were displayed first). - gets to 95% plugins then crashes.

    Reproduced again:

    Program received signal SIGSEGV, Segmentation fault.
    0xb6befcf0 in QString::fromLatin1_helper(char const*, int) ()
    

    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    (gdb) bt
    #0 0xb6befcf0 in QString::fromLatin1_helper(char const, int) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #1 0xb6bf4c6c in QString::fromAscii_helper(char const
    , int) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #2 0xb6bf4cae in QString::fromAscii(char const*, int) ()
    from /usr/lib/i386-linux-gnu/libQtCore.so.4
    #3 0x0806ec65 in QString::operator= (this=0x90925d0,
    ch=0xaeabc6d4 <Address 0xaeabc6d4="" out="" of="" bounds="">)
    at /usr/include/qt4/QtCore/qstring.h:425
    #4 0x080ce559 in qtractorLadspaPluginType::open (this=0x90925c8)
    at qtractorLadspaPlugin.cpp:51

     
  • Rui Nuno Capela

    Rui Nuno Capela - 2012-12-01

    looks like there's a ladspa or dssi plugin in particular that is causing the segfault upon enumeration. please try to find and pin which .so is the culprit.

    it also looks like the calf dssi versions are at stake; move /usr/lib/dssi/calf.so away and see if things get along nicer :) iirc. calf-dssi support has been dropped upstream, which means it's no longer an option

    cheers

     
  • James Stone

    James Stone - 2012-12-01

    Yep - that worked OK. I guess we can close this then.

     
  • Rui Nuno Capela

    Rui Nuno Capela - 2012-12-01
    • status: open --> pending
     
  • Rui Nuno Capela

    Rui Nuno Capela - 2012-12-03
    • status: pending --> closed
     

Log in to post a comment.