You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Ilya Leviev (JIRA)" <ji...@apache.org> on 2007/03/12 17:48:09 UTC
[jira] Created: (HARMONY-3370) [drlvm][jit] Race condition at
vm\jitrino\src\vm\drl\drljitinterface.cpp
[drlvm][jit] Race condition at vm\jitrino\src\vm\drl\drljitinterface.cpp
------------------------------------------------------------------------
Key: HARMONY-3370
URL: https://issues.apache.org/jira/browse/HARMONY-3370
Project: Harmony
Issue Type: Bug
Components: DRLVM
Reporter: Ilya Leviev
There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
Build configuration - debug
Write -> Read and Write -> Write data-races
Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
Stack Traces:
Context
Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
Function void * compile_me(struct Method *) "compile.cpp":787
Function compile_do_compilation "compile.cpp":767
Function CompileMethod "em_intf.cpp":49
Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
Function vm_compile_method "c_interface.cpp":2486
Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
Function JIT_compile_method_with_params "drljitinterface.cpp":236
1st Access
Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
Function void * compile_me(struct Method *) "compile.cpp":787
Function compile_do_compilation "compile.cpp":767
Function CompileMethod "em_intf.cpp":49
Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
Function vm_compile_method "c_interface.cpp":2486
Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
Function JIT_compile_method_with_params "drljitinterface.cpp":250
2nd Access
Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
Function void * compile_me(struct Method *) "compile.cpp":787
Function compile_do_compilation "compile.cpp":767
Function CompileMethod "em_intf.cpp":49
Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
Function vm_compile_method "c_interface.cpp":2486
Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3370) [drlvm][jit] Known/proven race
condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-3370:
---------------------------------
Attachment: (was: HARMONY-3370_add_markup.patch)
> [drlvm][jit] Known/proven race condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
> ---------------------------------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3370) [drlvm][jit] Known/proven race
condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-3370:
---------------------------------
Attachment: HARMONY-3370_add_markup.patch
> [drlvm][jit] Known/proven race condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
> ---------------------------------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (HARMONY-3370) [drlvm][jit] Known/proven race
condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov reassigned HARMONY-3370:
----------------------------------------
Assignee: Alexey Varlamov
> [drlvm][jit] Known/proven race condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
> ---------------------------------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Assigned To: Alexey Varlamov
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3370) [drlvm][jit] Race condition at
vm\jitrino\src\vm\drl\drljitinterface.cpp
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-3370:
---------------------------------
Patch Info: [Patch Available]
> [drlvm][jit] Race condition at vm\jitrino\src\vm\drl\drljitinterface.cpp
> ------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3370) [drlvm][jit] Race condition at
vm\jitrino\src\vm\drl\drljitinterface.cpp
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-3370:
---------------------------------
Attachment: HARMONY-3370_add_markup.patch
As the race not affect correctness of execution I have marked it by special API for prevention of further alarms on this race.
> [drlvm][jit] Race condition at vm\jitrino\src\vm\drl\drljitinterface.cpp
> ------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3370) [drlvm][jit] Known/proven race
condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-3370:
---------------------------------
Summary: [drlvm][jit] Known/proven race condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251) (was: [drlvm][jit] Race condition at vm\jitrino\src\vm\drl\drljitinterface.cpp)
> [drlvm][jit] Known/proven race condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
> ---------------------------------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Closed: (HARMONY-3370) [drlvm][jit] Known/proven race
condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov closed HARMONY-3370.
------------------------------------
Resolution: Fixed
> [drlvm][jit] Known/proven race condition markup at vm\jitrino\src\vm\drl\drljitinterface.cpp(L:251)
> ---------------------------------------------------------------------------------------------------
>
> Key: HARMONY-3370
> URL: https://issues.apache.org/jira/browse/HARMONY-3370
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Assigned To: Alexey Varlamov
> Attachments: HARMONY-3370_add_markup.patch
>
>
> There are thread unsafe access that result in race condition that occur during concurrent execution of JIT_compile_method_with_params function.
> Build configuration - debug
> Write -> Read and Write -> Write data-races
> Memory read at "drljitinterface.cpp":250 conflicts with a prior memory
> write at "drljitinterface.cpp":250 (L250: int current_nb = method_seqnb++;)
> Stack Traces:
> Context
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":236
> 1st Access
> Function hythread_thin_monitor_exit "thread_native_thin_monitor.c":410
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
> 2nd Access
> Function rth_update_checkcast_stats "jit_runtime_support.cpp":376
> Function class VM_thread * get_thread_ptr_stub(void) "thread_manager.cpp":145
> Function void * compile_me(struct Method *) "compile.cpp":787
> Function compile_do_compilation "compile.cpp":767
> Function CompileMethod "em_intf.cpp":49
> Function enum JIT_Result DrlEMImpl::compileMethod(struct Method *) "drlemimpl.cpp":570
> Function vm_compile_method "c_interface.cpp":2486
> Function enum JIT_Result compile_do_compilation_jit(struct Method *,class JIT *) "compile.cpp":654
> Function enum JIT_Result Dll_JIT::compile_method_with_params(void *,struct Method *,struct OpenMethodExecutionParams) "dll_jit_intf.h":86
> Function JIT_compile_method_with_params "drljitinterface.cpp":250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.