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/06/21 13:26:26 UTC
[jira] Created: (HARMONY-4260) [drlvm][classloader] Race conditions
at "java_type.cpp":(140-134) at load_type_desc() on reliability test
ClassReflectionTest
[drlvm][classloader] Race conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability test ClassReflectionTest
-----------------------------------------------------------------------------------------------------------------------------
Key: HARMONY-4260
URL: https://issues.apache.org/jira/browse/HARMONY-4260
Project: Harmony
Issue Type: Bug
Components: DRLVM
Reporter: Ilya Leviev
Priority: Minor
Race conditions at "java_type.cpp":(140-134) at load_type_desc() function while reliability test ClassReflectionTest execution
TC report on thread unsafe access that result in race condition that occur during concurrent execution of load_type_desc() function
if it low priority issue I will mark it as expected race condition.
1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
Stack Trace:
Context
Function class_is_subtype "jit_runtime_support.cpp":3202
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_disable "hythread_ext.h":427
Function m2n_pop_local_handles "m2n_ia32.cpp":257
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_enable "hythread_ext.h":376
Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
Function descriptor_to_jclass "reflection.cpp":39
Function type_info_get_class "c_interface.cpp":2070
Function TypeDesc::load_type_desc "java_type.cpp":114
Definition
Function Class::parse_fields "class_file_loader.cpp":2291
Function Field::parse "class_file_loader.cpp":786
Function Field::parse "class_file_loader.cpp":1113
Function type_desc_create_from_java_descriptor "java_type.cpp":81
Function TypeDesc::type_desc_create_vector "java_type.cpp":163
Function operator new "newop.cpp":12
Function malloc "dbgheap.c":139
Function nh_malloc_dbg "dbgheap.c":260
Function heap_alloc_dbg "dbgheap.c":397
Function heap_alloc_base "malloc.c":211
1st Access
Function class_is_subtype "jit_runtime_support.cpp":3202
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_disable "hythread_ext.h":427
Function m2n_pop_local_handles "m2n_ia32.cpp":257
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_enable "hythread_ext.h":376
Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
Function descriptor_to_jclass "reflection.cpp":39
Function type_info_get_class "c_interface.cpp":2070
Function TypeDesc::load_type_desc "java_type.cpp":140
"139" "" " if (!element_clss) return NULL;"
"140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
"141" "" " return clss;"
2nd Access
Function class_is_subtype "jit_runtime_support.cpp":3202
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_disable "hythread_ext.h":427
Function m2n_pop_local_handles "m2n_ia32.cpp":257
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_enable "hythread_ext.h":376
Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
Function descriptor_to_jclass "reflection.cpp":39
Function type_info_get_class "c_interface.cpp":2070
Function TypeDesc::load_type_desc "java_type.cpp":140
"139" "" " if (!element_clss) return NULL;"
"140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
"141" "" " return clss;"
See also Source View screenshots.
2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
Context
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_disable "hythread_ext.h":427
Function m2n_pop_local_handles "m2n_ia32.cpp":257
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_enable "hythread_ext.h":376
Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
Function descriptor_to_jclass "reflection.cpp":39
Function type_info_get_class "c_interface.cpp":2070
Function TypeDesc::load_type_desc "java_type.cpp":138
Function TypeDesc::load_type_desc "java_type.cpp":114
Definition
Function Class::parse_fields "class_file_loader.cpp":2291
Function Field::parse "class_file_loader.cpp":786
Function Field::parse "class_file_loader.cpp":1113
Function type_desc_create_from_java_descriptor "java_type.cpp":77
Function type_desc_create_from_java_descriptor "java_type.cpp":68
Function operator new "newop.cpp":12
Function malloc "dbgheap.c":139
Function nh_malloc_dbg "dbgheap.c":260
Function heap_alloc_dbg "dbgheap.c":397
Function heap_alloc_base "malloc.c":211
1st Access
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_disable "hythread_ext.h":427
Function m2n_pop_local_handles "m2n_ia32.cpp":257
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_enable "hythread_ext.h":376
Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
Function descriptor_to_jclass "reflection.cpp":39
Function type_info_get_class "c_interface.cpp":2070
Function TypeDesc::load_type_desc "java_type.cpp":138
Function TypeDesc::load_type_desc "java_type.cpp":134
"133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
"134" "*" " clss = loader->LoadClass(env, name);"
"135" "*" " return clss;"
2nd Access
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_disable "hythread_ext.h":427
Function m2n_pop_local_handles "m2n_ia32.cpp":257
Function get_thread_ptr_stub "thread_manager.cpp":138
Function hythread_suspend_enable "hythread_ext.h":376
Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
Function descriptor_to_jclass "reflection.cpp":39
Function type_info_get_class "c_interface.cpp":2070
Function TypeDesc::load_type_desc "java_type.cpp":138
Function TypeDesc::load_type_desc "java_type.cpp":134
"133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
"134" "*" " clss = loader->LoadClass(env, name);"
"135" "*" " return clss;"
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.
[jira] Updated: (HARMONY-4260) [drlvm][classloader] Race conditions
at "java_type.cpp":(140-134) at load_type_desc() on reliability test
ClassReflectionTest
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-4260:
---------------------------------
Attachment: SourceViewScreenshot-2.jpg
> [drlvm][classloader] Race conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability test ClassReflectionTest
> -----------------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4260
> URL: https://issues.apache.org/jira/browse/HARMONY-4260
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Priority: Minor
> Attachments: SourceViewscreenshot-1.jpg, SourceViewScreenshot-2.jpg
>
>
> Race conditions at "java_type.cpp":(140-134) at load_type_desc() function while reliability test ClassReflectionTest execution
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of load_type_desc() function
> if it low priority issue I will mark it as expected race condition.
> 1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
> 2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
> 1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
> Stack Trace:
> Context
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":114
> Definition
> Function Class::parse_fields "class_file_loader.cpp":2291
> Function Field::parse "class_file_loader.cpp":786
> Function Field::parse "class_file_loader.cpp":1113
> Function type_desc_create_from_java_descriptor "java_type.cpp":81
> Function TypeDesc::type_desc_create_vector "java_type.cpp":163
> Function operator new "newop.cpp":12
> Function malloc "dbgheap.c":139
> Function nh_malloc_dbg "dbgheap.c":260
> Function heap_alloc_dbg "dbgheap.c":397
> Function heap_alloc_base "malloc.c":211
> 1st Access
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":140
> "139" "" " if (!element_clss) return NULL;"
> "140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
> "141" "" " return clss;"
> 2nd Access
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":140
> "139" "" " if (!element_clss) return NULL;"
> "140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
> "141" "" " return clss;"
> See also Source View screenshots.
> 2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
> Context
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":114
> Definition
> Function Class::parse_fields "class_file_loader.cpp":2291
> Function Field::parse "class_file_loader.cpp":786
> Function Field::parse "class_file_loader.cpp":1113
> Function type_desc_create_from_java_descriptor "java_type.cpp":77
> Function type_desc_create_from_java_descriptor "java_type.cpp":68
> Function operator new "newop.cpp":12
> Function malloc "dbgheap.c":139
> Function nh_malloc_dbg "dbgheap.c":260
> Function heap_alloc_dbg "dbgheap.c":397
> Function heap_alloc_base "malloc.c":211
> 1st Access
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":134
> "133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
> "134" "*" " clss = loader->LoadClass(env, name);"
> "135" "*" " return clss;"
> 2nd Access
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":134
> "133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
> "134" "*" " clss = loader->LoadClass(env, name);"
> "135" "*" " return clss;"
> 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.
[jira] Updated: (HARMONY-4260) [drlvm][classloader] Race conditions
at "java_type.cpp":(140-134) at load_type_desc() on reliability test
ClassReflectionTest
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-4260:
---------------------------------
Attachment: SourceViewscreenshot-1.jpg
> [drlvm][classloader] Race conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability test ClassReflectionTest
> -----------------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4260
> URL: https://issues.apache.org/jira/browse/HARMONY-4260
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Priority: Minor
> Attachments: SourceViewscreenshot-1.jpg
>
>
> Race conditions at "java_type.cpp":(140-134) at load_type_desc() function while reliability test ClassReflectionTest execution
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of load_type_desc() function
> if it low priority issue I will mark it as expected race condition.
> 1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
> 2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
> 1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
> Stack Trace:
> Context
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":114
> Definition
> Function Class::parse_fields "class_file_loader.cpp":2291
> Function Field::parse "class_file_loader.cpp":786
> Function Field::parse "class_file_loader.cpp":1113
> Function type_desc_create_from_java_descriptor "java_type.cpp":81
> Function TypeDesc::type_desc_create_vector "java_type.cpp":163
> Function operator new "newop.cpp":12
> Function malloc "dbgheap.c":139
> Function nh_malloc_dbg "dbgheap.c":260
> Function heap_alloc_dbg "dbgheap.c":397
> Function heap_alloc_base "malloc.c":211
> 1st Access
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":140
> "139" "" " if (!element_clss) return NULL;"
> "140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
> "141" "" " return clss;"
> 2nd Access
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":140
> "139" "" " if (!element_clss) return NULL;"
> "140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
> "141" "" " return clss;"
> See also Source View screenshots.
> 2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
> Context
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":114
> Definition
> Function Class::parse_fields "class_file_loader.cpp":2291
> Function Field::parse "class_file_loader.cpp":786
> Function Field::parse "class_file_loader.cpp":1113
> Function type_desc_create_from_java_descriptor "java_type.cpp":77
> Function type_desc_create_from_java_descriptor "java_type.cpp":68
> Function operator new "newop.cpp":12
> Function malloc "dbgheap.c":139
> Function nh_malloc_dbg "dbgheap.c":260
> Function heap_alloc_dbg "dbgheap.c":397
> Function heap_alloc_base "malloc.c":211
> 1st Access
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":134
> "133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
> "134" "*" " clss = loader->LoadClass(env, name);"
> "135" "*" " return clss;"
> 2nd Access
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":134
> "133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
> "134" "*" " clss = loader->LoadClass(env, name);"
> "135" "*" " return clss;"
> 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.
[jira] Updated: (HARMONY-4260) [drlvm][classloader][tc] Race
conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability
test ClassReflectionTest
Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Leviev updated HARMONY-4260:
---------------------------------
Summary: [drlvm][classloader][tc] Race conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability test ClassReflectionTest (was: [drlvm][classloader] Race conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability test ClassReflectionTest)
> [drlvm][classloader][tc] Race conditions at "java_type.cpp":(140-134) at load_type_desc() on reliability test ClassReflectionTest
> ---------------------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4260
> URL: https://issues.apache.org/jira/browse/HARMONY-4260
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Ilya Leviev
> Priority: Minor
> Attachments: SourceViewscreenshot-1.jpg, SourceViewScreenshot-2.jpg
>
>
> Race conditions at "java_type.cpp":(140-134) at load_type_desc() function while reliability test ClassReflectionTest execution
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of load_type_desc() function
> if it low priority issue I will mark it as expected race condition.
> 1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
> 2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
> 1) Write -> Write data-race Memory write at "java_type.cpp":140 conflicts with a prior memory write at "java_type.cpp":140
> Stack Trace:
> Context
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":114
> Definition
> Function Class::parse_fields "class_file_loader.cpp":2291
> Function Field::parse "class_file_loader.cpp":786
> Function Field::parse "class_file_loader.cpp":1113
> Function type_desc_create_from_java_descriptor "java_type.cpp":81
> Function TypeDesc::type_desc_create_vector "java_type.cpp":163
> Function operator new "newop.cpp":12
> Function malloc "dbgheap.c":139
> Function nh_malloc_dbg "dbgheap.c":260
> Function heap_alloc_dbg "dbgheap.c":397
> Function heap_alloc_base "malloc.c":211
> 1st Access
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":140
> "139" "" " if (!element_clss) return NULL;"
> "140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
> "141" "" " return clss;"
> 2nd Access
> Function class_is_subtype "jit_runtime_support.cpp":3202
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":140
> "139" "" " if (!element_clss) return NULL;"
> "140" "*" " clss = resolve_class_array_of_class1(env, element_clss);"
> "141" "" " return clss;"
> See also Source View screenshots.
> 2) Write -> Write data-race Memory write at "java_type.cpp":134 conflicts with a prior memory write at "java_type.cpp":134
> Context
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":114
> Definition
> Function Class::parse_fields "class_file_loader.cpp":2291
> Function Field::parse "class_file_loader.cpp":786
> Function Field::parse "class_file_loader.cpp":1113
> Function type_desc_create_from_java_descriptor "java_type.cpp":77
> Function type_desc_create_from_java_descriptor "java_type.cpp":68
> Function operator new "newop.cpp":12
> Function malloc "dbgheap.c":139
> Function nh_malloc_dbg "dbgheap.c":260
> Function heap_alloc_dbg "dbgheap.c":397
> Function heap_alloc_base "malloc.c":211
> 1st Access
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":134
> "133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
> "134" "*" " clss = loader->LoadClass(env, name);"
> "135" "*" " return clss;"
> 2nd Access
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_disable "hythread_ext.h":427
> Function m2n_pop_local_handles "m2n_ia32.cpp":257
> Function get_thread_ptr_stub "thread_manager.cpp":138
> Function hythread_suspend_enable "hythread_ext.h":376
> Function Java_java_lang_reflect_VMReflection_getMethodReturnType "java_lang_reflect_vmreflection.cpp":87
> Function descriptor_to_jclass "reflection.cpp":39
> Function type_info_get_class "c_interface.cpp":2070
> Function TypeDesc::load_type_desc "java_type.cpp":138
> Function TypeDesc::load_type_desc "java_type.cpp":134
> "133" "" " //c = loader->LoadVerifyAndPrepareClass(env, name);"
> "134" "*" " clss = loader->LoadClass(env, name);"
> "135" "*" " return clss;"
> 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.