Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 43013 invoked from network); 23 Apr 2007 06:26:36 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Apr 2007 06:26:36 -0000 Received: (qmail 73077 invoked by uid 500); 23 Apr 2007 06:26:43 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 73051 invoked by uid 500); 23 Apr 2007 06:26:43 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 73042 invoked by uid 99); 23 Apr 2007 06:26:43 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 22 Apr 2007 23:26:43 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 22 Apr 2007 23:26:35 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 5C0EB714071 for ; Sun, 22 Apr 2007 23:26:15 -0700 (PDT) Message-ID: <30992550.1177309575374.JavaMail.jira@brutus> Date: Sun, 22 Apr 2007 23:26:15 -0700 (PDT) From: "Ivan Popov (JIRA)" To: commits@harmony.apache.org Subject: [jira] Created: (HARMONY-3721) [drlvm][jit] JET crashes in deep recursion if started with JVMTI agent MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [drlvm][jit] JET crashes in deep recursion if started with JVMTI agent ---------------------------------------------------------------------- Key: HARMONY-3721 URL: https://issues.apache.org/jira/browse/HARMONY-3721 Project: Harmony Issue Type: Bug Components: DRLVM Environment: Linux/x86, harmony-hdk-r531333 Reporter: Ivan Popov All JDWP tests of jdktools JPDA module failed on Linux/x86 after the recent changes in JET code for SSE2 support (r530955). Tests work fine on Windows/x86 and in -Xint mode on Linux/x86. When application is stared with JVMTI agent, JET falls into deep recursion and crashes in random place probably due to stack overflow. This happened after Agent_OnLoad() has been executed but before VMInit callback is invoked. Typical stack trace is the following: STDERR> SIGSEGV in VM code. STDERR> Stack trace: STDERR> 0: Jitrino::alloc_arena(Jitrino::Arena*, unsigned int) (.../working_vm/vm/jitrino/src/shared/Arena.cpp:47) STDERR> 1: Jitrino::MemoryManager::_alloc_arena(unsigned int) (.../working_vm/vm/jitrino/src/shared/MemoryManager.cpp:123) STDERR> 2: Jitrino::MemoryManager::alloc(unsigned int) (.../working_vm/vm/jitrino/src/shared/MemoryManager.cpp:223) STDERR> 3: operator new[](unsigned int, Jitrino::MemoryManager&) (.../working_vm/vm/jitrino/src/shared/MemoryManager.h:75) STDERR> 4: HashTableImpl (.../working_vm/vm/jitrino/src/shared/HashTable.h:56) STDERR> 5: HashTable (.../working_vm/vm/jitrino/src/shared/HashTable.h:332) STDERR> 6: PtrHashTable (.../working_vm/vm/jitrino/src/shared/HashTable.h:362) STDERR> 7: TypeManager (.../working_vm/vm/jitrino/src/shared/Type.cpp:340) STDERR> 8: JIT_compile_method_with_params (.../working_vm/vm/jitrino/src/vm/drl/DrlJITInterface.cpp:244) STDERR> 9: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams) (.../working_vm/vm/vmcore/include/dll_jit_intf.h:86) STDERR> 10: compile_do_compilation_jit(Method*, JIT*) (.../working_vm/vm/vmcore/src/jit/compile.cpp:657) STDERR> 11: vm_compile_method (.../working_vm/vm/vmcore/src/class_support/C_Interface.cpp:2493) STDERR> 12: DrlEMImpl::compileMethod(Method*) (.../working_vm/vm/em/src/DrlEMImpl.cpp:540) STDERR> 13: CompileMethod (.../working_vm/vm/em/src/em_intf.cpp:50) STDERR> 14: compile_do_compilation (.../working_vm/vm/vmcore/src/jit/compile.cpp:770) STDERR> 15: compile_me(Method*) (.../working_vm/vm/vmcore/src/jit/compile.cpp:790) STDERR> 16: 0xB5D52162 STDERR> 17: vm_invoke_native_array_stub (.../working_vm/vm/vmcore/src/util/ia32/base/invoke_native_stub_ia32.asm:41) STDERR> 18: JIT_execute_method_default(void*, _jmethodID*, jvalue*, jvalue*) (.../working_vm/vm/vmcore/src/util/ia32/base/ini_iA32.cpp:200) STDERR> 19: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) (.../working_vm/vm/em/src/DrlEMImpl.cpp:510) STDERR> 20: ExecuteMethod (.../working_vm/vm/em/src/em_intf.cpp:44) STDERR> 21: vm_execute_java_method_array(_jmethodID*, jvalue*, jvalue*) (.../working_vm/vm/vmcore/src/jit/ini.cpp:56) STDERR> 22: create_exception(Class*, Method*, jvalue*) (.../working_vm/vm/vmcore/src/exception/exceptions_impl.cpp:251) STDERR> 23: create_exception(Class*, char const*, _jobject*) (.../working_vm/vm/vmcore/src/exception/exceptions_impl.cpp:271) STDERR> 24: exn_create(Class*, char const*, _jobject*) (.../working_vm/vm/vmcore/src/exception/exceptions.cpp:172) STDERR> 25: exn_create(char const*, char const*, _jobject*) (.../working_vm/vm/vmcore/src/exception/exceptions.cpp:210) STDERR> 26: compile_raise_exception (.../working_vm/vm/vmcore/src/jit/compile.cpp:722) STDERR> 27: compile_me(Method*) (.../working_vm/vm/vmcore/src/jit/compile.cpp:796) STDERR> 28: 0xB5D52162 <...> To reproduce this bug run any JDWP test, for example org.apache.harmony.jpda.tests.jdwp.VirtualMachine.VersionTest: 1. create Harmony JDK with federated build: svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk cd trunk ant 2. goto jdktools directory, add junit to classpath, and launch test case: cd working_jdktools export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.VirtualMachine.VersionTest 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html It is possible also to run test directly from command line: cd working_jdktools deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \ org.apache.harmony.jpda.tests.jdwp.VirtualMachine.VersionTest -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.