Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 35967 invoked from network); 21 May 2007 05:55:37 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 21 May 2007 05:55:37 -0000 Received: (qmail 70563 invoked by uid 500); 21 May 2007 05:55:43 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 70471 invoked by uid 500); 21 May 2007 05:55: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 70462 invoked by uid 99); 21 May 2007 05:55:43 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 20 May 2007 22:55: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, 20 May 2007 22:55:37 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 6B64F714075 for ; Sun, 20 May 2007 22:55:16 -0700 (PDT) Message-ID: <24194587.1179726916437.JavaMail.jira@brutus> Date: Sun, 20 May 2007 22:55:16 -0700 (PDT) From: "Xiao-Feng Li (JIRA)" To: commits@harmony.apache.org Subject: [jira] Updated: (HARMONY-3611) [drlvm][gc_cc] GC_CC craches with assertion in OOME-related scenario In-Reply-To: <22158672.1176211472427.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-3611?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Xiao-Feng Li updated HARMONY-3611: ---------------------------------- Summary: [drlvm][gc_cc] GC_CC craches with assertion in OOME-related scenario (was: [drlvm][gc] GC_CC craches with assertion in OOME-related scenario) > [drlvm][gc_cc] GC_CC craches with assertion in OOME-related scenario > -------------------------------------------------------------------- > > Key: HARMONY-3611 > URL: https://issues.apache.org/jira/browse/HARMONY-3611 > Project: Harmony > Issue Type: Bug > Components: DRLVM > Reporter: Mikhail Fursov > Assigned To: Xiao-Feng Li > > The problem was found during HARMONY-2298 related investigations: > For the following test: > try { > for (int i=0;i<1000*1000;i++) { > ThreadLocal t = new ThreadLocal(); > t.set(new Object()); > t.set(null); > } > System.out.println("PASSED"); > } catch (OutOfMemoryError e) { > System.out.println("FAILED"); > } > When run with -Xem:jet -Xmx30m option we have a crash. > Here is stack trace with GC+JET failure: > > harmonyvm.dll!Class::get_allocation_handle() Line 1134 + 0x11 C++ > harmonyvm.dll!class_get_allocation_handle(Class * ch=0x00000008) Line 2394 C++ > gc_cc.dll!Partial_Reveal_Object::valid() Line 199 + 0xc C++ > gc_cc.dll!gc_copy_process_reference(Slot slot={...}, int phase=2) Line 166 C++ > gc_cc.dll!gc_copy_add_root_set_entry(Slot root={...}) Line 283 + 0xd C++ > gc_cc.dll!gc_add_root_set_entry_slot(Slot root={...}) Line 252 + 0x9 C++ > gc_cc.dll!gc_add_root_set_entry(void * * ref=0x04b9f8e8, unsigned int is_pinned=0) Line 265 + 0x9 C++ > harmonyvm.dll!vm_enumerate_root_reference(void * * ref=0x04b9f8e8, unsigned int is_pinned=0) Line 139 + 0x10 C++ > jitrino.dll!Jitrino::Jet::rt_enum(void * jit=0x01284478, Method * method=0x04376a98, void * henum=0x00000000, JitFrameContext * context=0x044607bc) Line 347 + 0x11 C++ > jitrino.dll!JIT_get_root_set_from_stack_frame(void * jit=0x01284478, Method * method=0x04376a98, void * enum_handle=0x00000000, JitFrameContext * context=0x044607bc) Line 371 + 0x15 C++ > harmonyvm.dll!Dll_JIT::get_root_set_from_stack_frame(Method * method=0x04376a98, void * enum_handle=0x00000000, const JitFrameContext * context=0x044607bc) Line 104 + 0x18 C++ > harmonyvm.dll!vm_enumerate_root_set_single_thread_on_stack(StackIterator * si=0x044607b8) Line 257 + 0x39 C++ > harmonyvm.dll!vm_enumerate_thread(VM_thread * thread=0x04389e40) Line 222 + 0x9 C++ > harmonyvm.dll!stop_the_world_root_set_enumeration() Line 108 + 0xc C++ > harmonyvm.dll!vm_enumerate_root_set_all_threads() Line 148 C++ > gc_cc.dll!enumerate_universe() Line 136 + 0x8 C++ > gc_cc.dll!copy_gc(int size=7340044) Line 375 + 0x16 C++ > gc_cc.dll!select_gc(int size=7340044) Line 96 + 0x9 C++ > gc_cc.dll!gc_alloc(unsigned int in_size=7340044, unsigned int _ah=20129088, void * thread_pointer=0x01288cf4) Line 274 + 0x9 C++ > harmonyvm.dll!vm_new_vector_using_vtable_and_thread_pointer(int length=1835008, unsigned int vector_handle=20129088, void * tp=0x01288cf4) Line 217 + 0x14 C++ > harmonyvm.dll!vm_rt_new_vector_using_vtable_and_thread_pointer(int length=1835008, unsigned int vector_handle=20129088, void * tp=0x01288cf4) Line 112 + 0x11 C++ > 01320a35() > After short investigation of JET/GC problem I found that JET gc report looks valid: java/lang/FinalizerThread is being reported. > GC fails because it founds broken references from this root-object to another ones. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.