On April 14, 2013 02:53:16 PM Robert Jonsson wrote:
> Hi guys,
> 
> I've been meaning to send this and/or debug it but it keeps elluding me.
> 
> Sometimes when I start MusE without jack running I get the following crash.
> Config File </home/ddskrjo/.config/MusE/MusE.cfg>
> LOCALE en_US
> Denormal protection enabled.
> jackd 0.122.0
> Copyright 2001-2009 Paul Davis, Stephane Letz, Jack O'Quinn, Torben
> Hohn and others.
> jackd comes with ABSOLUTELY NO WARRANTY
> This is free software, and you are welcome to redistribute it
> under certain conditions; see the file COPYING for details
> 
> JACK compiled with System V SHM support.
> loading driver ..
> creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
> control device hw:0
> configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods
> ALSA: final selected sample format for capture: 32bit integer little-endian
> ALSA: use 2 periods for capture
> Floating point exception (core dumped)
> 
> ------
> The core says pretty much nothing, I think it happens more often when
> the build does not have debug symbols.
> +++++
> Core was generated by `muse2'.
> Program terminated with signal 8, Arithmetic exception.
> #0  0x0804fa52 in main ()
> (gdb) bt
> #0  0x0804fa52 in main ()
> (gdb) thread
> [Current thread is 1 (Thread 0xb52e2740 (LWP 4384))]
> (gdb) thread 2
> [Switching to thread 2 (Thread 0xb1450b40 (LWP 4385))]
> #0  0xb775d424 in __kernel_vsyscall ()
> (gdb) bt
> #0  0xb775d424 in __kernel_vsyscall ()
> #1  0xb5bb296b in pthread_cond_wait@@GLIBC_2.3.2 () from
> /lib/i386-linux-gnu/libpthread.so.0
> #2  0xb62f664c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
> #3  0xb5a5833c in ?? () from /usr/lib/i386-linux-gnu/libjack.so.0
> #4  0xb5baed4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
> #5  0xb62e8d3e in clone () from /lib/i386-linux-gnu/libc.so.6
> +++++
> 
> Anyone else have seen this? It seems to happen more often the first
> time I start MusE.. but not really sure.
> 
> Regards
> Robert
> 

(Sorry for the delay, been sick last week, better now.)

Hm, OK I can think of a couple of possible causes:

Do you run muse with the -L switch?
Otherwise LA(DI)SH will try to start Jack, maybe there's competition
 between it and our own (-J) auto-starting of Jack ?

The other possibility is this:
I see you are using Jack-1.
Not sure about Jack-1 but there was a bug in Jack-2 that caused MusE
 to occasionally crash on startup.
I added a workaround for pre- Jack-1.9.9 versions which involves
 a time delay.

It is possible this time delay, in your case, is not enough:

In main.cpp around line 658:

==================================
// WARNING Must do it this way. Call registerClient long AFTER Jack client is 
// created and MusE ALSA client is 
// created (in initMidiDevices), otherwise random crashes can occur within 
// Jack <= 1.9.8. Fixed in Jack 1.9.9.  Tim.
      MusECore::initMidiDevices();    
      // Wait until things have settled. One second seems OK so far.
      for(int t = 0; t < 100; ++t)   
        usleep(10000);
      // Now it is safe to call registerClient.
      MusEGlobal::audioDevice->registerClient();
==================================

Tip: To coax the problem out, try *reducing* or eliminating that delay
 and see if it happens more frequently.
IIRC it happened more with lower Jack periods.

Hope that helps, lemme know because I should report this to Mr. Letz
 who helped me with Jack-2 and corrected it in Jack-1.9.9.

Tim.

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Lmuse-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lmuse-developer

Reply via email to