|
From: Fernanda M. <cri...@gm...> - 2015-01-22 18:39:51
|
Hi. LinuxSampler works ok on standalone, but when I add it into a channel in Ardour it segfaults and crash the program. This is only happening with LS until now. I've compiled with max debug level so I could have a trace of its operation. mei@Meistache ~ $ ardour2 Ardour 2.8.16 (built using 1:2.8.16+git20131003-1 and GCC version 4.8.2) Copyright (C) 1999-2008 Paul Davis Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker Ardour comes with ABSOLUTELY NO WARRANTY not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. This is free software, and you are welcome to redistribute it under certain conditions; see the source for copying conditions. loading default ui configuration file /etc/ardour2/ardour2_ui_default.conf loading user ui configuration file /home/mei/.ardour2/ardour2_ui.conf Loading ui configuration file /etc/ardour2/ardour2_ui_light.rc /etc/ardour2/ardour2_ui_light.rc:123: Clearlooks configuration option "menuitemstyle" is not supported and will be ignored. /etc/ardour2/ardour2_ui_light.rc:124: Clearlooks configuration option "listviewitemstyle" is not supported and will be ignored. /etc/ardour2/ardour2_ui_light.rc:125: Clearlooks configuration option "progressbarstyle" is not supported and will be ignored. Loading ui configuration file /etc/ardour2/ardour2_ui_light.rc /etc/ardour2/ardour2_ui_light.rc:123: Clearlooks configuration option "menuitemstyle" is not supported and will be ignored. /etc/ardour2/ardour2_ui_light.rc:124: Clearlooks configuration option "listviewitemstyle" is not supported and will be ignored. /etc/ardour2/ardour2_ui_light.rc:125: Clearlooks configuration option "progressbarstyle" is not supported and will be ignored. ardour: [INFO]: Ardour will be limited to 4096 open files loading system configuration file /etc/ardour2/ardour_system.rc loading user configuration file /home/mei/.ardour2/ardour.rc ardour: [INFO]: Using SSE optimized routines ardour: [INFO]: looking for control protocols in /home/mei/.ardour2/surfaces/:/usr/lib/ardour2/surfaces/ ardour: [ERROR]: ControlProtocolManager: cannot load module "/usr/lib/ardour2/surfaces//libardour_genericmidi.so" (/usr/lib/ardour2/surfaces//libardour_genericmidi.so: undefined symbol: _ZN5boost6system15system_categoryEv) ardour: [ERROR]: ControlProtocolManager: cannot load module "/usr/lib/ardour2/surfaces//libardour_tranzport.so" (/usr/lib/ardour2/surfaces//libardour_tranzport.so: undefined symbol: _ZN5boost6system15system_categoryEv) powermate: Opening of powermate failed - No such file or directory ardour: [INFO]: Control protocol powermate not usable ardour: [INFO]: Control surface protocol discovered: "Mackie" NSD response -5 folder = /home/mei/AudioWorks/First_Test loading bindings from /etc/ardour2/mnemonic-us.bindings (ardour-2.8.16:5548): Gtk-WARNING **: EnableTranslation: missing action EnableTranslation Session writable based on /home/mei/AudioWorks/First_Test/ Condition:: constructor, bInitialCondition=0 Condition:: constructor, bInitialCondition=0 Condition:: constructor, bInitialCondition=0 Condition:: constructor, bInitialCondition=0 Condition:: constructor, bInitialCondition=0 Condition:: constructor, bInitialCondition=0 Condition::WaitIf: bCondition=0 TimeoutSeconds=0 TimeoutNanoSeconds=0 Condition::Waitif() -> LOCK() Condition::Waitif() -> LOCK() passed Condition::Waitif() -> waiting for 'true' condition Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed Condition::Set() -> broadcasting 'true' condition Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed Condition::Set() -> broadcasting 'true' condition Condition::Waitif() -> awakened from 'true' condition waiting Condition::WaitIf: bCondition=0 TimeoutSeconds=0 TimeoutNanoSeconds=0 Condition::Waitif() -> LOCK() Condition::Waitif() -> LOCK() passed Condition::WaitAndUnlockIf() -> UNLOCK() Condition::WaitAndUnlockIf() -> UNLOCK() passed Condition:: constructor, bInitialCondition=0 Condition::WaitIf: bCondition=0 TimeoutSeconds=0 TimeoutNanoSeconds=0 Condition::Waitif() -> LOCK() Condition::Waitif() -> LOCK() passed Condition::Waitif() -> waiting for 'true' condition Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed Condition::Set() -> broadcasting 'true' condition Condition::Waitif() -> awakened from 'true' condition waiting linuxsampler: init feature: http://lv2plug.in/ns/ext/instance-access linuxsampler: init feature: http://lv2plug.in/ns/ext/data-access linuxsampler: init feature: http://lv2plug.in/ns/ext/urid#map linuxsampler: init feature: http://lv2plug.in/ns/ext/urid#unmap SamplerChannel: Assigning engine type...OK Creating new Engine. Condition:: constructor, bInitialCondition=0 Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Voice::SetEngine() Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed gig::Engine created Giga format scriptvm Condition:: constructor, bInitialCondition=0 ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddStarting disk thread...Condition::WaitIf: bCondition=0 TimeoutSeconds=0 TimeoutNanoSeconds=0 Condition::Waitif() -> LOCK() Condition::Waitif() -> LOCK() passed Condition::Waitif() -> waiting for 'true' condition Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed Condition::Set() -> broadcasting 'true' condition Disk thread running Condition::Waitif() -> awakened from 'true' condition waiting OK EQ support: no This Engine has now 1 EngineChannels. Condition::WaitIf: bCondition=1 TimeoutSeconds=0 TimeoutNanoSeconds=0 Condition::Waitif() -> LOCK() Condition::Waitif() -> LOCK() passed Condition::Waitif() -> waiting for 'false' condition Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed Condition::Set() -> broadcasting 'false' condition Condition::Waitif() -> awakened from 'false' condition waiting Condition::WaitIf: bCondition=0 TimeoutSeconds=0 TimeoutNanoSeconds=0 Condition::Waitif() -> LOCK() Condition::Waitif() -> LOCK() passed Condition::Waitif() -> waiting for 'true' condition Condition::Set() -> LOCK() Condition::Set() -> LOCK() passed Condition::Set() -> broadcasting 'true' condition Disk thread running Condition::Waitif() -> awakened from 'true' condition waiting linuxsampler: Activate Segmentation fault In other occurrence for the same failure I've got something like "JackTemporaryException :" instead of "Segmentation fault". Maybe it's something between Jack and LS some clue? Thanks in advance. -- *Fernanda Monteiro de Oliveira* Mobile: (+55 11) 99553 9362 Alt e-mail: nan...@ou... Social portfolio: http://about.me/nandameik |
|
From: Christian S. <sch...@li...> - 2015-01-23 14:20:02
|
On Thursday 22 January 2015 19:39:23 Fernanda Monteiro wrote: > Hi. LinuxSampler works ok on standalone, but when I add it into a channel > in Ardour it segfaults and crash the program. This is only happening with > LS until now. I've compiled with max debug level so I could have a trace of > its operation. When reporting a crash, please always provide a back trace. Debug messages alone are usually not helpful to find the root cause of a crash. Here are instructions how to generate a back trace for a crash happening with LinuxSampler. https://bugs.linuxsampler.org/ CU Christian |
|
From: Fernanda M. <cri...@gm...> - 2015-01-26 16:11:02
|
Hi Christian, thanks for the tip. I've just recompiled with debug symbols but I'm in doubt about how to backtrace it as a LV2 plugin, since if I run LinuxSampler prior to it, plugin will just fail due to can't bind to the right port anyway, so I can't have LS running before that in gdb. Any suggestions? 2015-01-23 11:28 GMT-02:00 Christian Schoenebeck < sch...@li...>: > On Thursday 22 January 2015 19:39:23 Fernanda Monteiro wrote: > > Hi. LinuxSampler works ok on standalone, but when I add it into a channel > > in Ardour it segfaults and crash the program. This is only happening with > > LS until now. I've compiled with max debug level so I could have a trace > of > > its operation. > > When reporting a crash, please always provide a back trace. Debug messages > alone are usually not helpful to find the root cause of a crash. Here are > instructions how to generate a back trace for a crash happening with > LinuxSampler. > > https://bugs.linuxsampler.org/ > > CU > Christian > -- *Fernanda Monteiro de Oliveira* Mobile: (+55 11) 99553 9362 Alt e-mail: nan...@ou... Social portfolio: http://about.me/nandameik |
|
From: Christian S. <sch...@li...> - 2015-01-26 17:03:14
|
On Monday 26 January 2015 17:10:34 Fernanda Monteiro wrote: > Hi Christian, thanks for the tip. I've just recompiled with debug symbols > but I'm in doubt about how to backtrace it as a LV2 plugin, since if I run > LinuxSampler prior to it, plugin will just fail due to can't bind to the > right port anyway, so I can't have LS running before that in gdb. Any > suggestions? Same thing. Just that you start Ardour instead of LinuxSampler in the way described. However since LinuxSampler is then launched by Ardour as plugin, you must install LinuxSampler before launching Ardour. Compiling Ardour with debugging symbols turned on as well, is definitely recommended. Another option (instead of starting Ardour with gdb) is enabling coredump output on your system: ulimit -c unlimited Then you can run Ardour normally (without debugger). Once it crashes it will automatically write a core dump file to the local directory, which is essentially a memory dump of the Ardour process at the time when the crashed happened. You can then get the back trace like this: gdb /full/path/to/ardourbinary /full/path/to/coredumpfile bt Both solutions usually yield the same result. CU Christian |