Skip to content
  • nagachika's avatar
    99c9aeef
    merge revision(s) b8a3f1bd: · 99c9aeef
    nagachika authored
    	Fix crash in tracing object allocations
    
    	ObjectSpace.trace_object_allocations_start could crash since it adds a
    	TracePoint for when objects are freed. However, TracePoint could crash
    	since it modifies st tables while inside the GC that is trying to free
    	the object. This could cause a memory allocation to happen which would
    	crash if it triggers another GC.
    
    	See a crash log: http://ci.rvm.jp/results/trunk@ruby-sp1/4373707
    	---
    	 ext/objspace/depend           | 1 +
    	 ext/objspace/object_tracing.c | 7 +++++++
    	 gc.h                          | 4 ++--
    	 3 files changed, 10 insertions(+), 2 deletions(-)
    99c9aeef
    merge revision(s) b8a3f1bd:
    nagachika authored
    	Fix crash in tracing object allocations
    
    	ObjectSpace.trace_object_allocations_start could crash since it adds a
    	TracePoint for when objects are freed. However, TracePoint could crash
    	since it modifies st tables while inside the GC that is trying to free
    	the object. This could cause a memory allocation to happen which would
    	crash if it triggers another GC.
    
    	See a crash log: http://ci.rvm.jp/results/trunk@ruby-sp1/4373707
    	---
    	 ext/objspace/depend           | 1 +
    	 ext/objspace/object_tracing.c | 7 +++++++
    	 gc.h                          | 4 ++--
    	 3 files changed, 10 insertions(+), 2 deletions(-)
Loading