harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexei Zakharov (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-3161) [drlvm] vm crash while playing with JSlider swing component
Date Mon, 12 Feb 2007 16:32:05 GMT
[drlvm] vm crash while playing with JSlider swing component
-----------------------------------------------------------

                 Key: HARMONY-3161
                 URL: https://issues.apache.org/jira/browse/HARMONY-3161
             Project: Harmony
          Issue Type: Bug
          Components: DRLVM
         Environment: Harmony r506436 on Debian Linux
            Reporter: Alexei Zakharov
            Priority: Minor



Let's take the following piece of code

JSliderTest.java:
---
import javax.swing.JFrame;
import javax.swing.JSlider;

public class JSliderTest {
    public static void main(String[] args) {
        JFrame f = new JFrame();
        JSlider s = new JSlider();

        s.setEnabled(true);
        f.getContentPane().add(s);
        f.setSize(100, 100);
        f.show();
    }
} 

and run it on the recent DRLVM build: 

 $DRLVM_HOME/bin/java JSliderTest

Now
1. Press and hold "left arrow" keyboard button
2. Position mouse pointer to the right of the slider 
3. Click many times on the left mouse button
4. If the slider reach the mouse pointer goto step 5
5. Press and hold "right arrow" keyboard button
6. Position mouse pointer to the left of the slider 
7. Click many times on the left mouse button
8. If the slider reach the mouse pointer goto step 1
9. repeat steps 1-8 until VM crash occured :-) It takes me several seconds

SIGSEGV in VM code.
Stack trace:
        1: Jitrino::Ia32::operator==(Jitrino::Ia32::SpillGen::Op const&, Jitrino::Ia32::Inst
const*) (??:-1)
        2: ?? (00197d39
:197)
        3: Jitrino::Ia32::SpillGen::Opline::isUse(Jitrino::Ia32::Inst const*) const (??:-1)
        4: Jitrino::Ia32::SpillGen::loadOpnd(Jitrino::Ia32::SpillGen::Opline&, Jitrino::Ia32::SpillGen::Instx*,
Jitrino::Ia32::Opnd*) (??:-1)
        5: Jitrino::Ia32::SpillGen::assignReg(Jitrino::Ia32::SpillGen::Opline&, Jitrino::Ia32::SpillGen::Instx*,
Jitrino::Ia32::SpillGen::Instx*, RegName) (??:-1)
        6: Jitrino::Ia32::SpillGen::tryRegister(Jitrino::Ia32::SpillGen::Opline&, Jitrino::Ia32::Constraint,
unsigned int) (??:-1)
        7: Jitrino::Ia32::SpillGen::pass1() (??:-1)
        8: Jitrino::Ia32::SpillGen::runImpl() (??:-1)
        9: Jitrino::Ia32::SessionAction::run() (??:-1)
        10: Jitrino::runPipeline(Jitrino::CompilationContext*) (??:-1)
        11: Jitrino::compileMethod(Jitrino::CompilationContext*) (??:-1)
        12: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (??:-1)
        13: JIT_compile_method_with_params (??:-1)
        14: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams)
(/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/include/dll_jit_intf.h:86)
        15: compile_do_compilation_jit(Method*, JIT*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/jit/compile.cpp:645)
        16: vm_compile_method (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/C_Interface.cpp:2469)
        17: DrlEMImpl::methodProfileIsReady(MethodProfile*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/em/src/DrlEMImpl.cpp:778)
        18: EBProfileCollector::syncModeJitCallback(MethodProfile*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/em/src/EBProfileCollector.cpp:192)
        19: eb_profiler_sync_mode_callback(void*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/em/src/EBProfileCollector.cpp:92)
        20: IP is 0x41F6603A <native code>
        21: ?? (??:-1)
        22: java/awt/geom/FlatteningPathIterator.evaluate()V (FlatteningPathIterator.java:160)
        23: java/awt/geom/FlatteningPathIterator.currentSegment([F)I (FlatteningPathIterator.java:269)
        24: org/apache/harmony/awt/gl/render/JavaShapeRasterizer.makeBuffer(Ljava/awt/geom/PathIterator;D)V
(JavaShapeRasterizer.java:193)
        25: org/apache/harmony/awt/gl/render/JavaShapeRasterizer.rasterize(Ljava/awt/Shape;D)Lorg/apache/harmony/awt/gl/MultiRectArea;
(JavaShapeRasterizer.java:405)
        26: org/apache/harmony/awt/gl/CommonGraphics2D.fill(Ljava/awt/Shape;)V (CommonGraphics2D.java:731)
        27: org/apache/harmony/awt/gl/CommonGraphics2D.fillRect(IIII)V (CommonGraphics2D.java:763)
        28: javax/swing/plaf/ComponentUI.update(Ljava/awt/Graphics;Ljavax/swing/JComponent;)V
(ComponentUI.java:32)
        29: javax/swing/JComponent.paintComponent(Ljava/awt/Graphics;)V (JComponent.java:895)
        30: javax/swing/JComponent.paint(Ljava/awt/Graphics;)V (JComponent.java:998)
        31: javax/swing/JComponent.paintDoubleBuffered(Ljava/awt/Graphics;)V (JComponent.java:1430)
        32: javax/swing/JComponent.paintImmediately(Ljava/awt/Rectangle;)V (JComponent.java:1011)
        33: javax/swing/RepaintManager.paintDirtyRegions()V (RepaintManager.java:174)
        34: javax/swing/RepaintManager$1.run()V (RepaintManager.java:66)
        35: java/awt/event/InvocationEvent.runAndNotify()V (InvocationEvent.java:89)
        36: java/awt/event/InvocationEvent.dispatch()V (InvocationEvent.java:77)        37:
java/awt/EventQueueCore.dispatchEventImpl(Ljava/awt/AWTEvent;)V (EventQueueCore.java:135)
        38: java/awt/EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V (EventQueue.java:144)
        39: java/awt/EventDispatchThread.runModalLoop(Ljava/awt/ModalContext;)V (EventDispatchThread.java:55)
        40: java/awt/EventDispatchThread.run()V (EventDispatchThread.java:45)
        41: vm_invoke_native_array_stub (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/util/ia32/base/invoke_native_stub_ia32.asm:41)
        42: JIT_execute_method_default(void*, _jmethodID*, jvalue*, jvalue*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/util/ia32/base/ini_iA32.cpp:200)
        43: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/em/src/DrlEMImpl.cpp:516)
        44: ExecuteMethod (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/em/src/em_intf.cpp:44)
        45: vm_execute_java_method_array(_jmethodID*, jvalue*, jvalue*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/jit/ini.cpp:56)
        46: call_method_no_ref_result (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/jni/jni_method.cpp:189)
        47: CallVoidMethodA(JNIEnv_External*, _jobject*, _jmethodID*, jvalue*) (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/vmcore/src/jni/jni_method.cpp:227)
        48: wrapper_proc (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/thread/src/thread_java_basic.c:96)
        49: thread_start_proc (/home/ayzakhar/projects/harmony/enhanced/drlvm/trunk/vm/thread/src/thread_native_basic.c:725)
        50: dummy_worker (threadproc/unix/thread.c:139)
        51: start_thread (??:-1)
        52: clone (??:-1)
<end of stack trace>
Segmentation fault


Please note, that this issue is Linux-specific. I was unable to reproduce it on Windows.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message