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/14 15:22:26 UTC

[jira] Created: (HARMONY-4169) [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions

[drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
------------------------------------------------------------------------------------------------------------------------

                 Key: HARMONY-4169
                 URL: https://issues.apache.org/jira/browse/HARMONY-4169
             Project: Harmony
          Issue Type: Bug
          Components: DRLVM
            Reporter: Ilya Leviev


Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions

TC report on thread unsafe access that result in race condition that occur during concurrent execution of thread_local_alloc() and alloc_context_reset() functions

if it not affect correctness of execution I will mark it by special API for prevention of further alarms on this race. 


Read -> Write data-race	
Memory write at "gc_thread.h":153 conflicts with a prior memory read at "gc_thread.h":92


Stack Trace:

Context
	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
	Function interpreterInvokeStatic "interpreter.cpp":3312
	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
	Function invokeJNI "interp_native_ia32.cpp":49
	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
	Function gc_force_gc "gc_for_vm.cpp":138
	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":142

Definition
	Function hythread_create_with_group "thread_native_basic.c":136
	Function os_thread_create "os_thread.c":37
	Function _beginthreadex "threadex.c":145
	Function EntryPoint "dllcrt0.c":323
	Function threadstartex "threadex.c":241
	Function thread_start_proc "thread_native_basic.c":711
	Function wrapper_proc "thread_java_basic.c":82
	Function vm_attach "thread_generic.cpp":266
	Function gc_thread_init "gc_for_vm.cpp":152
	Function void mutator_initialize(struct GC *,void *) "mutator.cpp":30

1st Access
	Function Opcode_INVOKEVIRTUAL "interpreter.cpp":2060
	Function interpreterInvokeVirtual "interpreter.cpp":3509
	Function interpreterInvoke "interpreter.cpp":3427
	Function void interpreter(struct StackFrame &) "interpreter.cpp":2841
	Function Opcode_NEWARRAY "interpreter.cpp":1090
	Function void * vm_new_vector_primitive(struct Class *,int) "vm_arrays.cpp":138
	Function gc_alloc "mutator_alloc.cpp":79
	Function void * nos_alloc(unsigned int,struct Allocator *) "gen.cpp":274
	Function void * fspace_alloc(unsigned int,struct Allocator *) "fspace_alloc.cpp":55
	Function struct Partial_Reveal_Object * thread_local_alloc(unsigned int,struct Allocator *) "gc_thread.h":92

	"91"	""	"   POINTER_SIZE_INT free = (POINTER_SIZE_INT)allocator->free;"
	"92"	"*"	"   POINTER_SIZE_INT ceiling = (POINTER_SIZE_INT)allocator->ceiling;"


2nd Access
	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
	Function interpreterInvokeStatic "interpreter.cpp":3312
	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
	Function invokeJNI "interp_native_ia32.cpp":49
	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
	Function gc_force_gc "gc_for_vm.cpp":138
	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":153


	"152"	""	"    allocator->free = NULL;"
	"153"	"*"	"    allocator->ceiling = NULL;"
	"154"	""	"    allocator->end = NULL;"


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] Assigned: (HARMONY-4169) [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions

Posted by "Xiao-Feng Li (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4169?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xiao-Feng Li reassigned HARMONY-4169:
-------------------------------------

    Assignee: Xiao-Feng Li

> [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4169
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4169
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ilya Leviev
>            Assignee: Xiao-Feng Li
>            Priority: Minor
>         Attachments: Source ViewScreenshot-1.jpg
>
>
> Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of thread_local_alloc() and alloc_context_reset() functions
> if it not affect correctness of execution I will mark it by special API for prevention of further alarms on this race. 
> Read -> Write data-race	
> Memory write at "gc_thread.h":153 conflicts with a prior memory read at "gc_thread.h":92
> Stack Trace:
> Context
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":142
> Definition
> 	Function hythread_create_with_group "thread_native_basic.c":136
> 	Function os_thread_create "os_thread.c":37
> 	Function _beginthreadex "threadex.c":145
> 	Function EntryPoint "dllcrt0.c":323
> 	Function threadstartex "threadex.c":241
> 	Function thread_start_proc "thread_native_basic.c":711
> 	Function wrapper_proc "thread_java_basic.c":82
> 	Function vm_attach "thread_generic.cpp":266
> 	Function gc_thread_init "gc_for_vm.cpp":152
> 	Function void mutator_initialize(struct GC *,void *) "mutator.cpp":30
> 1st Access
> 	Function Opcode_INVOKEVIRTUAL "interpreter.cpp":2060
> 	Function interpreterInvokeVirtual "interpreter.cpp":3509
> 	Function interpreterInvoke "interpreter.cpp":3427
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2841
> 	Function Opcode_NEWARRAY "interpreter.cpp":1090
> 	Function void * vm_new_vector_primitive(struct Class *,int) "vm_arrays.cpp":138
> 	Function gc_alloc "mutator_alloc.cpp":79
> 	Function void * nos_alloc(unsigned int,struct Allocator *) "gen.cpp":274
> 	Function void * fspace_alloc(unsigned int,struct Allocator *) "fspace_alloc.cpp":55
> 	Function struct Partial_Reveal_Object * thread_local_alloc(unsigned int,struct Allocator *) "gc_thread.h":92
> 	"91"	""	"   POINTER_SIZE_INT free = (POINTER_SIZE_INT)allocator->free;"
> 	"92"	"*"	"   POINTER_SIZE_INT ceiling = (POINTER_SIZE_INT)allocator->ceiling;"
> 2nd Access
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":153
> 	"152"	""	"    allocator->free = NULL;"
> 	"153"	"*"	"    allocator->ceiling = NULL;"
> 	"154"	""	"    allocator->end = NULL;"
> 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-4169) [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions

Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4169?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ilya Leviev updated HARMONY-4169:
---------------------------------

    Priority: Minor  (was: Major)

> [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4169
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4169
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ilya Leviev
>            Priority: Minor
>         Attachments: Source ViewScreenshot-1.jpg
>
>
> Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of thread_local_alloc() and alloc_context_reset() functions
> if it not affect correctness of execution I will mark it by special API for prevention of further alarms on this race. 
> Read -> Write data-race	
> Memory write at "gc_thread.h":153 conflicts with a prior memory read at "gc_thread.h":92
> Stack Trace:
> Context
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":142
> Definition
> 	Function hythread_create_with_group "thread_native_basic.c":136
> 	Function os_thread_create "os_thread.c":37
> 	Function _beginthreadex "threadex.c":145
> 	Function EntryPoint "dllcrt0.c":323
> 	Function threadstartex "threadex.c":241
> 	Function thread_start_proc "thread_native_basic.c":711
> 	Function wrapper_proc "thread_java_basic.c":82
> 	Function vm_attach "thread_generic.cpp":266
> 	Function gc_thread_init "gc_for_vm.cpp":152
> 	Function void mutator_initialize(struct GC *,void *) "mutator.cpp":30
> 1st Access
> 	Function Opcode_INVOKEVIRTUAL "interpreter.cpp":2060
> 	Function interpreterInvokeVirtual "interpreter.cpp":3509
> 	Function interpreterInvoke "interpreter.cpp":3427
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2841
> 	Function Opcode_NEWARRAY "interpreter.cpp":1090
> 	Function void * vm_new_vector_primitive(struct Class *,int) "vm_arrays.cpp":138
> 	Function gc_alloc "mutator_alloc.cpp":79
> 	Function void * nos_alloc(unsigned int,struct Allocator *) "gen.cpp":274
> 	Function void * fspace_alloc(unsigned int,struct Allocator *) "fspace_alloc.cpp":55
> 	Function struct Partial_Reveal_Object * thread_local_alloc(unsigned int,struct Allocator *) "gc_thread.h":92
> 	"91"	""	"   POINTER_SIZE_INT free = (POINTER_SIZE_INT)allocator->free;"
> 	"92"	"*"	"   POINTER_SIZE_INT ceiling = (POINTER_SIZE_INT)allocator->ceiling;"
> 2nd Access
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":153
> 	"152"	""	"    allocator->free = NULL;"
> 	"153"	"*"	"    allocator->ceiling = NULL;"
> 	"154"	""	"    allocator->end = NULL;"
> 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] Closed: (HARMONY-4169) [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions

Posted by "Xiao-Feng Li (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4169?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xiao-Feng Li closed HARMONY-4169.
---------------------------------

    Resolution: Won't Fix

There are just too many false alarms in GC module reported by Thread Checker. GC is design to be parallel (and concurrent) with many parallel constructs that TC can't recognize. So I will close these issues, and suggest to exclude GC module from TC sanity check temporarily.  Actually I am afraid that, finally the major part of GC would be marked UNSAFE, which is virtually the same as excluding it. Thanks.

> [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4169
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4169
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ilya Leviev
>            Assignee: Xiao-Feng Li
>            Priority: Minor
>         Attachments: Source ViewScreenshot-1.jpg
>
>
> Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of thread_local_alloc() and alloc_context_reset() functions
> if it not affect correctness of execution I will mark it by special API for prevention of further alarms on this race. 
> Read -> Write data-race	
> Memory write at "gc_thread.h":153 conflicts with a prior memory read at "gc_thread.h":92
> Stack Trace:
> Context
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":142
> Definition
> 	Function hythread_create_with_group "thread_native_basic.c":136
> 	Function os_thread_create "os_thread.c":37
> 	Function _beginthreadex "threadex.c":145
> 	Function EntryPoint "dllcrt0.c":323
> 	Function threadstartex "threadex.c":241
> 	Function thread_start_proc "thread_native_basic.c":711
> 	Function wrapper_proc "thread_java_basic.c":82
> 	Function vm_attach "thread_generic.cpp":266
> 	Function gc_thread_init "gc_for_vm.cpp":152
> 	Function void mutator_initialize(struct GC *,void *) "mutator.cpp":30
> 1st Access
> 	Function Opcode_INVOKEVIRTUAL "interpreter.cpp":2060
> 	Function interpreterInvokeVirtual "interpreter.cpp":3509
> 	Function interpreterInvoke "interpreter.cpp":3427
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2841
> 	Function Opcode_NEWARRAY "interpreter.cpp":1090
> 	Function void * vm_new_vector_primitive(struct Class *,int) "vm_arrays.cpp":138
> 	Function gc_alloc "mutator_alloc.cpp":79
> 	Function void * nos_alloc(unsigned int,struct Allocator *) "gen.cpp":274
> 	Function void * fspace_alloc(unsigned int,struct Allocator *) "fspace_alloc.cpp":55
> 	Function struct Partial_Reveal_Object * thread_local_alloc(unsigned int,struct Allocator *) "gc_thread.h":92
> 	"91"	""	"   POINTER_SIZE_INT free = (POINTER_SIZE_INT)allocator->free;"
> 	"92"	"*"	"   POINTER_SIZE_INT ceiling = (POINTER_SIZE_INT)allocator->ceiling;"
> 2nd Access
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":153
> 	"152"	""	"    allocator->free = NULL;"
> 	"153"	"*"	"    allocator->ceiling = NULL;"
> 	"154"	""	"    allocator->end = NULL;"
> 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-4169) [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions

Posted by "Ilya Leviev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4169?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ilya Leviev updated HARMONY-4169:
---------------------------------

    Attachment: Source ViewScreenshot-1.jpg

> [drlvm][gc_gen][tc] Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4169
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4169
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ilya Leviev
>         Attachments: Source ViewScreenshot-1.jpg
>
>
> Race condition at "gc_thread.h":(92-153) at thread_local_alloc() and alloc_context_reset() functions
> TC report on thread unsafe access that result in race condition that occur during concurrent execution of thread_local_alloc() and alloc_context_reset() functions
> if it not affect correctness of execution I will mark it by special API for prevention of further alarms on this race. 
> Read -> Write data-race	
> Memory write at "gc_thread.h":153 conflicts with a prior memory read at "gc_thread.h":92
> Stack Trace:
> Context
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":142
> Definition
> 	Function hythread_create_with_group "thread_native_basic.c":136
> 	Function os_thread_create "os_thread.c":37
> 	Function _beginthreadex "threadex.c":145
> 	Function EntryPoint "dllcrt0.c":323
> 	Function threadstartex "threadex.c":241
> 	Function thread_start_proc "thread_native_basic.c":711
> 	Function wrapper_proc "thread_java_basic.c":82
> 	Function vm_attach "thread_generic.cpp":266
> 	Function gc_thread_init "gc_for_vm.cpp":152
> 	Function void mutator_initialize(struct GC *,void *) "mutator.cpp":30
> 1st Access
> 	Function Opcode_INVOKEVIRTUAL "interpreter.cpp":2060
> 	Function interpreterInvokeVirtual "interpreter.cpp":3509
> 	Function interpreterInvoke "interpreter.cpp":3427
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2841
> 	Function Opcode_NEWARRAY "interpreter.cpp":1090
> 	Function void * vm_new_vector_primitive(struct Class *,int) "vm_arrays.cpp":138
> 	Function gc_alloc "mutator_alloc.cpp":79
> 	Function void * nos_alloc(unsigned int,struct Allocator *) "gen.cpp":274
> 	Function void * fspace_alloc(unsigned int,struct Allocator *) "fspace_alloc.cpp":55
> 	Function struct Partial_Reveal_Object * thread_local_alloc(unsigned int,struct Allocator *) "gc_thread.h":92
> 	"91"	""	"   POINTER_SIZE_INT free = (POINTER_SIZE_INT)allocator->free;"
> 	"92"	"*"	"   POINTER_SIZE_INT ceiling = (POINTER_SIZE_INT)allocator->ceiling;"
> 2nd Access
> 	Function void interpreter(struct StackFrame &) "interpreter.cpp":2931
> 	Function Opcode_INVOKESTATIC "interpreter.cpp":2104
> 	Function interpreterInvokeStatic "interpreter.cpp":3312
> 	Function void interpreterInvokeStaticNative(struct StackFrame &,struct StackFrame &,struct Method *) "interp_native_ia32.cpp":358
> 	Function invokeJNI "interp_native_ia32.cpp":49
> 	Function Java_java_lang_VMMemoryManager_runGC "java_lang_vmmemorymanager.cpp":138
> 	Function gc_force_gc "gc_for_vm.cpp":138
> 	Function void gc_reclaim_heap(struct GC *,unsigned int) "gc_common.cpp":300
> 	Function void gc_reset_mutator_context(struct GC *) "mutator.cpp":102
> 	Function void alloc_context_reset(struct Allocator *) "gc_thread.h":153
> 	"152"	""	"    allocator->free = NULL;"
> 	"153"	"*"	"    allocator->ceiling = NULL;"
> 	"154"	""	"    allocator->end = NULL;"
> 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.