Re: [Bluemusic-users] [Cs-dev] Java API Bug Workaround
Brought to you by:
kunstmusik
From: Steven Yi <ste...@gm...> - 2011-09-19 15:32:31
|
(I'm CC'ing this to the blue user's mailing list, please direct replies only to that list) >From the crash log I see you are using OpenJDK. blue only supports use of Sun/Oracle JVM on Linux at this time. I have had problems with OpenJDK in the past that did not happen with Sun/Oracle JVM. OpenJDK is becoming more and more in-line with everything that was in the Sun/Oracle JVM, so I imagine I can start testing more on that in the future. I'd say, please try using the Sun/Oracle JVM first. If problems persist, please email me a copy of your .asoundrc file off list and I can try to do a test locally to reproduce. Also, if you are modifying .asoundrc while blue is already open, that might be a possible problem (not sure). Let me know how using the other JVM goes and we can continue testing/debugging from there. Thanks! steven On Mon, Sep 19, 2011 at 2:01 PM, ebmtranceboy <ebm...@gm...> wrote: > Hi Steven, > FYI, I experienced crashes on Ubuntu with the following process: > > * selecting Csound ApI > * switching PortAudio to record mode (actually rewriting .asoundrc to fork > audio stream to a file) > * selecting Blue Live and Midi In > * tweaking some sound parameter through the interface of a Blue Synth > instrument while playing a MIDI note > > then, if this is not producing a crash (which is rare), > > * unchecking Blue Live > * switching PortAudio to only-play mode (rewriting .asoundrc) > * selecting Blue Live > > and, finally, no matter what happens (hitting a keyboard key...), no sound > is produced (PortAudio is down), blue crashes (because of JVM) after a > while, a JVM error log is generated and PortAudio stays down (I have to > reboot to reinit because I don't how to do otherwise). > > I should add that all of these troubles don't happen when Csound API is not > selected (of course I can't tweak instruments in real-time anymore during a > recording in this case). > > > > Here is the beginning of a typical JVM error log if it can help > > # > # A fatal error has been detected by the Java Runtime Environment: > # > # SIGSEGV (0xb) at pc=0x06059450, pid=4402, tid=3020409712 > # > # JRE version: 6.0_20-b20 > # Java VM: OpenJDK Client VM (19.0-b09 mixed mode, sharing linux-x86 ) > # Derivative: IcedTea6 1.9.9 > # Distribution: Ubuntu 10.10, package 6b20-1.9.9-0ubuntu1~10.10.2 > # Problematic frame: > # C 0x06059450 > # > # If you would like to submit a bug report, please include > # instructions how to reproduce the bug and visit: > # https://bugs.launchpad.net/ubuntu/+source/openjdk-6/ > # The crash happened outside the Java Virtual Machine in native code. > # See problematic frame for where to report the bug. > # > > --------------- T H R E A D --------------- > > Current thread (0x09c0f800): JavaThread "AWT-EventQueue-1" > [_thread_in_native, id=4432, stack(0xb402c000,0xb407d000)] > > siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), > si_addr=0x06059450 > > Registers: > EAX=0x0084e24c, EBX=0x0084dff4, ECX=0x00cfcff4, EDX=0x00000003 > ESP=0xb407a77c, EBP=0xb407a928, ESI=0xb407cb38, EDI=0x00080800 > EIP=0x06059450, CR2=0x06059450, EFLAGS=0x00010283 > > Register to memory mapping: > > EAX=0x0084e24c > 0x0084e24c: snd_lib_error+0 in /usr/lib/libasound.so.2 at 0x00789000 > > EBX=0x0084dff4 > 0x0084dff4: <offset 0xc4ff4> in /usr/lib/libasound.so.2 at 0x00789000 > > ECX=0x00cfcff4 > 0x00cfcff4: <offset 0x16ff4> in /lib/libpthread.so.0 at 0x00ce6000 > > EDX=0x00000003 > 0x00000003 is pointing to unknown location > > ESP=0xb407a77c > 0xb407a77c is pointing into the stack for thread: 0x09c0f800 > "AWT-EventQueue-1" prio=10 tid=0x09c0f800 nid=0x1150 runnable [0xb407a000] > java.lang.Thread.State: RUNNABLE > > EBP=0xb407a928 > 0xb407a928 is pointing into the stack for thread: 0x09c0f800 > "AWT-EventQueue-1" prio=10 tid=0x09c0f800 nid=0x1150 runnable [0xb407a000] > java.lang.Thread.State: RUNNABLE > > ESI=0xb407cb38 > 0xb407cb38 is pointing into the stack for thread: 0x09c0f800 > "AWT-EventQueue-1" prio=10 tid=0x09c0f800 nid=0x1150 runnable [0xb407a000] > java.lang.Thread.State: RUNNABLE > > EDI=0x00080800 > 0x00080800 is pointing to unknown location > > > Top of Stack: (sp=0xb407a77c) > 0xb407a77c: 0081dd71 00844d08 000000e9 00844d46 > 0xb407a78c: 00000002 00844d37 b407a8e4 00000010 > 0xb407a79c: b407aa2c 00000000 09d50020 00a02918 > 0xb407a7ac: 003c276f 00000000 00000000 00000002 > 0xb407a7bc: 00000000 b407a8e4 00000001 b407ac2c > 0xb407a7cc: 00000000 b2844440 80000002 007af298 > 0xb407a7dc: fffffffe 00000010 bfcba094 bfcba0d8 > 0xb407a7ec: 0077dff4 0078d250 0072d8bd 00862ff4 > > Instructions: (pc=0x06059450) > 0x06059440: > [error occurred during error reporting (printing registers, top of stack, > instructions near pc), id 0xb] > > Stack: [0xb402c000,0xb407d000], sp=0xb407a77c, free space=313k > Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native > code) > C 0x06059450 > C [libasound.so.2+0x950d1] _snd_rawmidi_hw_open+0x191 > C [libasound.so.2+0x93c8a] > C [libasound.so.2+0x9421c] > C [libjsoundalsa.so+0xa9c1] > C [libjsoundalsa.so+0xa0fe] > C [libjsoundalsa.so+0x6ac7] > Java_com_sun_media_sound_MidiInDeviceProvider_nGetNumDevices+0x17 > j com.sun.media.sound.MidiInDeviceProvider.nGetNumDevices()I+0 > j com.sun.media.sound.MidiInDeviceProvider.getNumDevices()I+8 > j com.sun.media.sound.AbstractMidiDeviceProvider.readDeviceInfos()V+63 > j > com.sun.media.sound.AbstractMidiDeviceProvider.getDeviceInfo()[Ljavax/sound/midi/MidiDevice$Info;+1 > j > javax.sound.midi.spi.MidiDeviceProvider.isDeviceSupported(Ljavax/sound/midi/MidiDevice$Info;)Z+1 > j > javax.sound.midi.MidiSystem.getMidiDevice(Ljavax/sound/midi/MidiDevice$Info;)Ljavax/sound/midi/MidiDevice;+29 > j blue.midi.BlueMidiDevice.open()V+25 > j blue.midi.MidiInputManager.start()V+43 > j blue.ui.core.blueLive.BlueLiveToolBar.midiButtonActionPerformed()V+15 > j > blue.ui.core.blueLive.BlueLiveToolBar$4.actionPerformed(Ljava/awt/event/ActionEvent;)V+4 > j > javax.swing.AbstractButton.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+84 > j > javax.swing.AbstractButton$Handler.actionPerformed(Ljava/awt/event/ActionEvent;)V+5 > j > javax.swing.DefaultButtonModel.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+35 > j javax.swing.JToggleButton$ToggleButtonModel.setPressed(Z)V+148 > j > javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Ljava/awt/event/MouseEvent;)V+35 > j java.awt.Component.processMouseEvent(Ljava/awt/event/MouseEvent;)V+64 > j javax.swing.JComponent.processMouseEvent(Ljava/awt/event/MouseEvent;)V+23 > j java.awt.Component.processEvent(Ljava/awt/AWTEvent;)V+81 > J java.awt.Container.processEvent(Ljava/awt/AWTEvent;)V > V [libjvm.so+0x209952] > V [libjvm.so+0x30a529] > V [libjvm.so+0x20888f] > V [libjvm.so+0x2579cd] > C [libjava.so+0x9d6a] > Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2Ljava_security_AccessControlContext_2+0x3a > J > java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; > J > java.security.AccessControlContext$1.doIntersectionPrivilege(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object; > V [libjvm.so+0x209952] > V [libjvm.so+0x30a529] > V [libjvm.so+0x20888f] > V [libjvm.so+0x2579cd] > C [libjava.so+0x9d6a] > Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2Ljava_security_AccessControlContext_2+0x3a > J > java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; > J java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V > j java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4 > j java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3 > j java.awt.EventDispatchThread.run()V+9 > v ~StubRoutines::call_stub > V [libjvm.so+0x209952] > V [libjvm.so+0x30a529] > V [libjvm.so+0x20888f] > V [libjvm.so+0x2093da] > V [libjvm.so+0x209538] > V [libjvm.so+0x253cfb] > V [libjvm.so+0x3bb2ac] > V [libjvm.so+0x3bb372] > V [libjvm.so+0x310f51] > C [libpthread.so.0+0x5cc9] > > Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) > j com.sun.media.sound.MidiInDeviceProvider.nGetNumDevices()I+0 > j com.sun.media.sound.MidiInDeviceProvider.getNumDevices()I+8 > j com.sun.media.sound.AbstractMidiDeviceProvider.readDeviceInfos()V+63 > j > com.sun.media.sound.AbstractMidiDeviceProvider.getDeviceInfo()[Ljavax/sound/midi/MidiDevice$Info;+1 > j > javax.sound.midi.spi.MidiDeviceProvider.isDeviceSupported(Ljavax/sound/midi/MidiDevice$Info;)Z+1 > j > javax.sound.midi.MidiSystem.getMidiDevice(Ljavax/sound/midi/MidiDevice$Info;)Ljavax/sound/midi/MidiDevice;+29 > j blue.midi.BlueMidiDevice.open()V+25 > j blue.midi.MidiInputManager.start()V+43 > j blue.ui.core.blueLive.BlueLiveToolBar.midiButtonActionPerformed()V+15 > j > blue.ui.core.blueLive.BlueLiveToolBar$4.actionPerformed(Ljava/awt/event/ActionEvent;)V+4 > j > javax.swing.AbstractButton.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+84 > j > javax.swing.AbstractButton$Handler.actionPerformed(Ljava/awt/event/ActionEvent;)V+5 > j > javax.swing.DefaultButtonModel.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+35 > j javax.swing.JToggleButton$ToggleButtonModel.setPressed(Z)V+148 > j > javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Ljava/awt/event/MouseEvent;)V+35 > j java.awt.Component.processMouseEvent(Ljava/awt/event/MouseEvent;)V+64 > j javax.swing.JComponent.processMouseEvent(Ljava/awt/event/MouseEvent;)V+23 > j java.awt.Component.processEvent(Ljava/awt/AWTEvent;)V+81 > J java.awt.Container.processEvent(Ljava/awt/AWTEvent;)V > J java.awt.Component.dispatchEventImpl(Ljava/awt/AWTEvent;)V > J java.awt.Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V > J > java.awt.LightweightDispatcher.retargetMouseEvent(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V > J > java.awt.LightweightDispatcher.processMouseEvent(Ljava/awt/event/MouseEvent;)Z > J java.awt.LightweightDispatcher.dispatchEvent(Ljava/awt/AWTEvent;)Z > J java.awt.Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V > J java.awt.Window.dispatchEventImpl(Ljava/awt/AWTEvent;)V > J > java.awt.EventQueue.dispatchEventImpl(Ljava/awt/AWTEvent;Ljava/lang/Object;)V > J java.awt.EventQueue$1.run()Ljava/lang/Object; > v ~StubRoutines::call_stub > J > java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; > J > java.security.AccessControlContext$1.doIntersectionPrivilege(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object; > J java.awt.EventQueue$2.run()Ljava/lang/Object; > v ~StubRoutines::call_stub > J > java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; > J java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V > J org.netbeans.core.TimableEventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V > J java.awt.EventDispatchThread.pumpOneEventForFilters(I)Z > J > java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V > j > java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11 > j java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4 > j java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3 > j java.awt.EventDispatchThread.run()V+9 > v ~StubRoutines::call_stub > > --------------- P R O C E S S --------------- > > Java Threads: ( => current thread ) > 0x09f46000 JavaThread "Thread-130" [_thread_in_native, id=5117, > stack(0xb3bd9000,0xb3c2a000)] > 0x09f71000 JavaThread "Thread-129" [_thread_in_native, id=5116, > stack(0xb41fd000,0xb424e000)] > 0x09ca2000 JavaThread "process reaper" daemon [_thread_in_native, id=5114, > stack(0xb3b88000,0xb3bd9000)] > 0xb28ac800 JavaThread "Thread-128" [_thread_blocked, id=5113, > stack(0xb2ad9000,0xb2b2a000)] > 0x09b24000 JavaThread "Inactive RequestProcessor thread [Was:Logging > Flush/org.netbeans.core.startup.TopLogging$NonClose]" daemon > [_thread_blocked, id=5106, stack(0xb424e000,0xb429f000)] > 0x09bb5800 JavaThread "File Watcher" daemon [_thread_in_native, id=4468, > stack(0xb3c2a000,0xb3c7b000)] > 0x09a32800 JavaThread "DestroyJavaVM" [_thread_blocked, id=4403, > stack(0xb777a000,0xb77cb000)] > =>0x09c0f800 JavaThread "AWT-EventQueue-1" [_thread_in_native, id=4432, > stack(0xb402c000,0xb407d000)] > 0x09cccc00 JavaThread "TimerQueue" daemon [_thread_blocked, id=4431, > stack(0xb3c7b000,0xb3ccc000)] > 0x09ccbc00 JavaThread "Thread-5" daemon [_thread_blocked, id=4430, > stack(0xb3ccc000,0xb3d1d000)] > 0x09cc5400 JavaThread "Java Sound Event Dispatcher" daemon > [_thread_blocked, id=4429, stack(0xb3d1d000,0xb3d6e000)] > 0x09d52c00 JavaThread "Thread-3" daemon [_thread_blocked, id=4428, > stack(0xb3d6f000,0xb3dc0000)] > 0x09c0f000 JavaThread "AWT-Shutdown" [_thread_blocked, id=4425, > stack(0xb3fda000,0xb402b000)] > 0x09b95400 JavaThread "AWT-XAWT" daemon [_thread_in_native, id=4417, > stack(0xb407d000,0xb40ce000)] > 0x09b42c00 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=4416, > stack(0xb41ac000,0xb41fd000)] > 0x09b22400 JavaThread "CLI Requests Server" daemon [_thread_in_native, > id=4413, stack(0xb429f000,0xb42f0000)] > 0x09b0f000 JavaThread "Active Reference Queue Daemon" daemon > [_thread_blocked, id=4412, stack(0xb4cd6000,0xb4d27000)] > 0x09b08c00 JavaThread "Timer-0" daemon [_thread_blocked, id=4411, > stack(0xb4d27000,0xb4d78000)] > 0x09a6dc00 JavaThread "Low Memory Detector" daemon [_thread_blocked, > id=4409, stack(0xb4e1d000,0xb4e6e000)] > 0x09a6c000 JavaThread "CompilerThread0" daemon [_thread_blocked, id=4408, > stack(0xb4e6e000,0xb4eef000)] > 0x09a6a400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, > id=4407, stack(0xb4eef000,0xb4f40000)] > 0x09a62c00 JavaThread "Finalizer" daemon [_thread_blocked, id=4406, > stack(0xb5140000,0xb5191000)] > 0x09a61400 JavaThread "Reference Handler" daemon [_thread_blocked, > id=4405, stack(0xb5191000,0xb51e2000)] > > Other Threads: > 0x09a5f800 VMThread [stack: 0xb51e2000,0xb5263000] [id=4404] > 0x09a79c00 WatcherThread [stack: 0xb4d9c000,0xb4e1d000] [id=4410] > > VM state:not at safepoint (normal execution) > > VM Mutex/Monitor currently owned by a thread: None > > > -- > View this message in context: http://csound.1045644.n5.nabble.com/Java-API-Bug-Workaround-tp4818532p4818891.html > Sent from the Csound - Dev mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA > Learn about the latest advances in developing for the > BlackBerry® mobile platform with sessions, labs & more. > See new tools and technologies. Register for BlackBerry® DevCon today! > http://p.sf.net/sfu/rim-devcon-copy1 > _______________________________________________ > Csound-devel mailing list > Cso...@li... > https://lists.sourceforge.net/lists/listinfo/csound-devel > |