Quantcast

Java API Bug Workaround

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Java API Bug Workaround

Steven Yi
Hi All,

Posting to both lists in case some who use the Java API may not be on
the dev list.  I spent some time stabilizing blue on OSX when using
the Csound API.  I discovered two things:

1. On OSX, using the callback version of PortAudio is unstable with
use with blue, and also when using API in general when you are using
multiple instances of Csound.  This can if used in parallel or
sequentially (i.e. finish a render of csound, then start a new render
of csound).  There seems to be some kind of time lag when closing
Csound and hence CoreAudio while the callback from CoreAudio is
continuing and before it finally disconnects.  If another instance of
Csound starts within that window of time, it seems to crash.  This
also happens with the CoreAudio csound rtaudio module.  Using pa_bl on
OSX works without problems.  (I think I reported this one already on
the dev list).

2. If you use the CsoundCallbackWrapper class, which is necessary if
you are going to get messages back from Csound, one calls
csoundCallbackWrapper.SetMessageCallback() to register the callback
with Csound.  If you call csound.Reset() on an instance, then create a
new instance of Csound, I found there were crashes.  csoundReset seems
to do some pointer copying; I couldn't exactly figure out the exact
cause of crash. I did find that if I did not use SetMessageCallback()
it would not crash, but then again, also would not get the messages.
I finally found a workaround solution last night, which was to call
(within Java) the following before doing Reset:

            csound.SetMessageCallback(null);
            csound.SetHostData(null);
            csound.Reset();

Setting the callback to null and setting the hostdata to null before
reset has prevented the crash for me.  I don't remember any API
crashes on Windows or Linux, but if you experience any it might be
worth trying the above.

Thanks!
steven

------------------------------------------------------------------------------
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
[hidden email]
https://lists.sourceforge.net/lists/listinfo/csound-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java API Bug Workaround

ebmtranceboy
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
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java API Bug Workaround

Steven Yi
(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 <[hidden email]> 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&reg; DevCon Americas, Oct. 18-20, San Francisco, CA
> Learn about the latest advances in developing for the
> BlackBerry&reg; mobile platform with sessions, labs & more.
> See new tools and technologies. Register for BlackBerry&reg; DevCon today!
> http://p.sf.net/sfu/rim-devcon-copy1
> _______________________________________________
> Csound-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>

------------------------------------------------------------------------------
BlackBerry&reg; DevCon Americas, Oct. 18-20, San Francisco, CA
Learn about the latest advances in developing for the
BlackBerry&reg; mobile platform with sessions, labs & more.
See new tools and technologies. Register for BlackBerry&reg; DevCon today!
http://p.sf.net/sfu/rim-devcon-copy1 
_______________________________________________
Csound-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/csound-devel
Loading...