Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

loading a session w/ HighLife plugin causes OOM to segfault #116

Open
danboid opened this issue May 19, 2012 · 1 comment
Open

loading a session w/ HighLife plugin causes OOM to segfault #116

danboid opened this issue May 19, 2012 · 1 comment

Comments

@danboid
Copy link

danboid commented May 19, 2012

Running the latest debug builds of OOM and DISTRHO (as of 19th May) under AV Linux 5.0.3, OOM crashes when I attempt to load a project that uses the HighLife plugin, in both its VST and LV2 versions and built with or without debug.

Here is a backtrace from trying to load a session which uses the latest debug-built Highlife VST plugin:

GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/...
Reading symbols from /usr/local/bin/oomidi...done.
(gdb) run
Starting program: /usr/local/bin/oomidi
[Thread debugging using libthread_db enabled]
Denormal protection enabled.
[New Thread 0xb512ab70 (LWP 2160)]
lscp_client_create: cmd: connect: Connection refused
[New Thread 0xb4128b70 (LWP 2162)]
[New Thread 0xb4929b70 (LWP 2161)]
Locale detected: Keyboard: en_GB, System: en_GB
no translation matching system locale <oom_en_GB>/</usr/local/share/oom-2012.1.beta1/locale>
Looking up LADSPA plugins...
LSThread::pingLinuxsampler: Description: LinuxSampler - modular, streaming capable sampler, Version: 1.0.0.svn15, Protocol Version: 1.5

Looking up LV2 plugins...
Looking up VST plugins...
JUCE v2.0.21
[New Thread 0xb2a8fb70 (LWP 2166)]
[Thread 0xb2a8fb70 (LWP 2166) exited]
Trying RTC timer...
RtcTimer::setTimerFreq(): cannot set tick on /dev/rtc: Permission denied
precise timer not available
Trying ALSA timer...
AlsaTimer::initTimer(): best available ALSA timer: system timer
got timer = 68
[New Thread 0xb2a8fb70 (LWP 2171)]
starting with default template
LSClient::startClient: hostname: localhost, port: 8888
Initialized LSCP client connection
[New Thread 0xb1cffb70 (LWP 2172)]
JACK: buffersize changed 2048
Starting midiMonitor
[New Thread 0xb0c7eb70 (LWP 2173)]
[New Thread 0xb047db70 (LWP 2174)]
[New Thread 0xafc7cb70 (LWP 2175)]
OOMidi Command Server Listening on port: 8415
LinuxSampler::ERROR: Could not scan LADSPA effects: library path '/usr/local/lib/ladspa:/usr/lib/ladspa' doesn't exist
Stoping midiMonitor
[Thread 0xb0c7eb70 (LWP 2173) exited]
[Thread 0xafc7cb70 (LWP 2175) exited]
[Thread 0xb047db70 (LWP 2174) exited]
Setting project path to /home/iatn/music-stuff
[New Thread 0xb047db70 (LWP 2176)]

Program received signal SIGSEGV, Segmentation fault.
0xb5cc0486 in ?? () from /lib/i386-linux-gnu/i686/cmov/libc.so.6
(gdb) bt
#0 0xb5cc0486 in ?? () from /lib/i386-linux-gnu/i686/cmov/libc.so.6
#1 0x00000001 in ?? ()
#2 0xb2e3147b in CHighLife::plug_load_program (this=0xaf391008, index=0, pmi=0xbfffd56c) at ../source/Highlife/HighLifePlug.cpp:107
#3 0xb2e2c598 in CHighLife::setStateInformation (this=0xaf391008, data=0xaf0cf018, sizeInBytes=786487) at ../source/Highlife/Highlife.cpp:379
#4 0xb2e49914 in JuceVSTWrapper::setChunk (this=0x9b96040, data=0xaf0cf018, byteSize=786487, onlyRestoreCurrentProgramData=false)

at ../../../libs/juce-2.0/source/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:959

#5 0xb2e45dae in AudioEffect::dispatcher (this=0x9b96040, opcode=24, index=0, value=786487, ptr=0xaf0cf018, opt=0)

at ../../../sdks/vstsdk2.4/public.sdk/source/vst2.x/audioeffect.cpp:190

#6 0xb2e44207 in AudioEffectX::dispatcher (this=0x9b96040, opcode=24, index=0, value=786487, ptr=0xaf0cf018, opt=0)

at ../../../sdks/vstsdk2.4/public.sdk/source/vst2.x/audioeffectx.cpp:297

#7 0xb2e4a0ff in JuceVSTWrapper::dispatcher (this=0x9b96040, opCode=24, index=0, value=786487, ptr=0xaf0cf018, opt=0)

at ../../../libs/juce-2.0/source/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:1169

#8 0xb2e4578a in AudioEffect::dispatchEffectClass (e=0x9b96060, opCode=24, index=0, value=786487, ptr=0xaf0cf018, opt=0)

at ../../../sdks/vstsdk2.4/public.sdk/source/vst2.x/audioeffect.cpp:32

#9 0x08255aa3 in VstPlugin::readConfiguration (this=0x9b87330, xml=..., readPreset=false) at /home/iatn/src/oom/oom/plugin_vst.cpp:1080
#10 0x0823e0e8 in SynthPluginDevice::read (this=0x9b34748, xml=...) at /home/iatn/src/oom/oom/plugin.cpp:627
#11 0x081ecc26 in readConfigMidiPort (xml=...) at /home/iatn/src/oom/oom/conf.cpp:375
#12 0x081ed8d3 in readSeqConfiguration (xml=...) at /home/iatn/src/oom/oom/conf.cpp:578
#13 0x081edde1 in readConfiguration (xml=..., readOnlySequencer=false) at /home/iatn/src/oom/oom/conf.cpp:711
#14 0x08281e57 in OOMidi::read (this=0x9415df0, xml=..., skipConfig=false) at /home/iatn/src/oom/oom/songfile.cpp:879
#15 0x081c543a in OOMidi::loadProjectFile1 (this=0x9415df0, name=..., songTemplate=false, loadAll=true) at /home/iatn/src/oom/oom/app.cpp:1816
#16 0x081c4657 in OOMidi::loadProjectFile (this=0x9415df0, name=..., songTemplate=false, loadAll=true) at /home/iatn/src/oom/oom/app.cpp:1656
#17 0x081cb560 in OOMidi::selectProject (this=0x9415df0, act=0x98794b0) at /home/iatn/src/oom/oom/app.cpp:3166
#18 0x082c7012 in OOMidi::qt_metacall (this=0x9415df0, _c=QMetaObject::InvokeMetaMethod, _id=51, _a=0xbfffe1e8)

at /home/iatn/src/oom/build/oom/moc_app.cxx:327

#19 0xb60465dd in QMetaObject::metacall(QObject_, QMetaObject::Call, int, void_) () from /usr/lib/libQtCore.so.4
#20 0xb6055320 in QMetaObject::activate(QObject_, QMetaObject const_, int, void**) () from /usr/lib/libQtCore.so.4
#21 0xb68fe385 in QMenu::triggered(QAction
) () from /usr/lib/libQtGui.so.4
#22 0xb68ff48d in ?? () from /usr/lib/libQtGui.so.4
#23 0xb69032d3 in QMenu::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libQtGui.so.4
#24 0xb60465dd in QMetaObject::metacall(QObject_, QMetaObject::Call, int, void_) () from /usr/lib/libQtCore.so.4
#25 0xb6055320 in QMetaObject::activate(QObject_, QMetaObject const_, int, void**) () from /usr/lib/libQtCore.so.4
#26 0xb645953d in QAction::triggered(bool) () from /usr/lib/libQtGui.so.4
#27 0xb64597db in QAction::activate(QAction::ActionEvent) () from /usr/lib/libQtGui.so.4
#28 0xb68fe643 in ?? () from /usr/lib/libQtGui.so.4
#29 0xb6904e3f in ?? () from /usr/lib/libQtGui.so.4
#30 0xb6907ae5 in QMenu::mouseReleaseEvent(QMouseEvent
) () from /usr/lib/libQtGui.so.4
#31 0xb64bac7f in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#32 0xb690656c in QMenu::event(QEvent*) () from /usr/lib/libQtGui.so.4
#33 0xb64607a4 in QApplicationPrivate::notify_helper(QObject_, QEvent_) () from /usr/lib/libQtGui.so.4
#34 0xb64665bb in QApplication::notify(QObject_, QEvent_) () from /usr/lib/libQtGui.so.4

---Type to continue, or q to quit---
#35 0x081b6600 in OOMidiApplication::notify (this=0xbffff380, receiver=0x9669990, event=0xbfffebd8) at /home/iatn/src/oom/oom/main.cpp:148
#36 0xb604022e in QCoreApplication::notifyInternal(QObject_, QEvent_) () from /usr/lib/libQtCore.so.4
#37 0xb6461760 in QApplicationPrivate::sendMouseEvent(QWidget_, QMouseEvent_, QWidget_, QWidget_, QWidget**, QPointer&, bool) ()

from /usr/lib/libQtGui.so.4
#38 0xb64eb95d in ?? () from /usr/lib/libQtGui.so.4
#39 0xb64ea1e7 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#40 0xb6515b0c in ?? () from /usr/lib/libQtGui.so.4
#41 0xb7584252 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#42 0xb7584a30 in ?? () from /lib/libglib-2.0.so.0
#43 0xb7584ce4 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#44 0xb606e477 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/libQtCore.so.4
#45 0xb651572a in ?? () from /usr/lib/libQtGui.so.4
#46 0xb603f24d in QEventLoop::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/libQtCore.so.4
#47 0xb603f491 in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/libQtCore.so.4
#48 0xb6043bea in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#49 0xb645e624 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#50 0x081b59b8 in main (argc=1, argv=0xbffff554) at /home/iatn/src/oom/oom/main.cpp:570

@danboid
Copy link
Author

danboid commented May 19, 2012

In fact, loading a session that uses HL LV2 doesn't crash OOM - the plugin just doesn't produce any sound as if its failed to load its chunk data or something properly and OOM gives an error like:

Application asked to unregister timer 0x1c000029 which is not registered in this thread. Fix application.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant