Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 70514 invoked from network); 23 May 2007 13:44:41 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 May 2007 13:44:41 -0000 Received: (qmail 70996 invoked by uid 500); 23 May 2007 13:44:44 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 70979 invoked by uid 500); 23 May 2007 13:44:44 -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 70959 invoked by uid 99); 23 May 2007 13:44:44 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 23 May 2007 06:44:44 -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; Wed, 23 May 2007 06:44:37 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id DCC3D714065 for ; Wed, 23 May 2007 06:44:16 -0700 (PDT) Message-ID: <24143093.1179927856901.JavaMail.jira@brutus> Date: Wed, 23 May 2007 06:44:16 -0700 (PDT) From: "Ilya Leviev (JIRA)" To: commits@harmony.apache.org Subject: [jira] Created: (HARMONY-3947) [drlvm][object] Known/proven race conditions markup at vm_arrays.cpp":414 at increment_array_copy_counter() 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][object] Known/proven race conditions markup at vm_arrays.cpp":414 at increment_array_copy_counter() ----------------------------------------------------------------------------------------------------------- Key: HARMONY-3947 URL: https://issues.apache.org/jira/browse/HARMONY-3947 Project: Harmony Issue Type: Bug Components: DRLVM Reporter: Ilya Leviev TC report on thread unsafe access that result in race condition that occur during concurrent execution of increment_array_copy_counter functions. As issues related to vm statistic data collection in debug mode and it not affect correctness of execution I mark it by special API for prevention of further alarms on this race. Write -> Write data-race Memory write at "vm_arrays.cpp":414 conflicts with a prior memory write at "vm_arrays.cpp":414 Stack Trace: Context Function gc_alloc_fast "gc_for_vm.cpp":178 Function vm_get_gc_thread_local "c_interface.cpp":2334 Function void * vm_new_vector_or_null_using_vtable_and_thread_pointer(int,unsigned int,void *) "vm_arrays.cpp":251 Function rth_aastore "jit_runtime_support.cpp":499 Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":138 Function hythread_suspend_enable "hythread_ext.h":370 Function Java_java_lang_VMMemoryManager_arrayCopy "java_lang_vmmemorymanager.cpp":48 Function array_copy_jni "jni_utils.cpp":637 Function enum ArrayCopyResult array_copy(struct ManagedObject *,int,struct ManagedObject *,int,int) "vm_arrays.cpp":463 Function increment_array_copy_counter "vm_arrays.cpp":413 1st Access Function hythread_self "hythread.h":465 Function int Jitrino::Jet::rt_h_i32_2_u16(int) "arith_rt.cpp":264 Function vm_get_gc_thread_local "c_interface.cpp":2334 Function is_class_initialized "jit_runtime_support.cpp":702 Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":138 Function hythread_suspend_enable "hythread_ext.h":370 Function Java_java_lang_VMMemoryManager_arrayCopy "java_lang_vmmemorymanager.cpp":48 Function array_copy_jni "jni_utils.cpp":637 Function enum ArrayCopyResult array_copy(struct ManagedObject *,int,struct ManagedObject *,int,int) "vm_arrays.cpp":463 Function increment_array_copy_counter "vm_arrays.cpp":414 "411" "" " #ifdef VM_STATS" "412" "" " static void increment_array_copy_counter(uint64 &counter)" "413" "" " {" "414" "*" " counter ++;" "415" "" " }" "416" "" " #endif // VM_STATS" 2nd Access Function gc_alloc_fast "gc_for_vm.cpp":178 Function vm_get_gc_thread_local "c_interface.cpp":2334 Function void * vm_new_vector_or_null_using_vtable_and_thread_pointer(int,unsigned int,void *) "vm_arrays.cpp":251 Function rth_aastore "jit_runtime_support.cpp":499 Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":138 Function hythread_suspend_enable "hythread_ext.h":370 Function Java_java_lang_VMMemoryManager_arrayCopy "java_lang_vmmemorymanager.cpp":48 Function array_copy_jni "jni_utils.cpp":637 Function enum ArrayCopyResult array_copy(struct ManagedObject *,int,struct ManagedObject *,int,int) "vm_arrays.cpp":463 Function increment_array_copy_counter "vm_arrays.cpp":414 "411" "" " #ifdef VM_STATS" "412" "" " static void increment_array_copy_counter(uint64 &counter)" "413" "" " {" "414" "*" " counter ++;" "415" "" " }" "416" "" " #endif // VM_STATS" See also Source View screenshots. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.