mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* gc.c (init_heap): call init_mark_stack before to allocate
altstack. This change avoid the stack overflow at the signal handler on 32bit, but I don't understand reason... [Feature #7095] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
08c8605de9
commit
ec62e30196
2 changed files with 8 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
Thu Oct 4 23:40:04 2012 Narihiro Nakamura <authornari@gmail.com>
|
||||||
|
|
||||||
|
* gc.c (init_heap): call init_mark_stack before to allocate
|
||||||
|
altstack. This change avoid the stack overflow at the signal
|
||||||
|
handler on 32bit, but I don't understand reason... [Feature #7095]
|
||||||
|
|
||||||
Thu Oct 4 22:39:27 2012 Koichi Sasada <ko1@atdot.net>
|
Thu Oct 4 22:39:27 2012 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
* insns.def (getlocal, setlocal): remove old getlocal/setlocal
|
* insns.def (getlocal, setlocal): remove old getlocal/setlocal
|
||||||
|
|
3
gc.c
3
gc.c
|
@ -587,6 +587,8 @@ static void
|
||||||
init_heap(rb_objspace_t *objspace)
|
init_heap(rb_objspace_t *objspace)
|
||||||
{
|
{
|
||||||
add_heap_slots(objspace, HEAP_MIN_SLOTS / HEAP_OBJ_LIMIT);
|
add_heap_slots(objspace, HEAP_MIN_SLOTS / HEAP_OBJ_LIMIT);
|
||||||
|
init_mark_stack(&objspace->mark_stack);
|
||||||
|
|
||||||
#ifdef USE_SIGALTSTACK
|
#ifdef USE_SIGALTSTACK
|
||||||
{
|
{
|
||||||
/* altstack of another threads are allocated in another place */
|
/* altstack of another threads are allocated in another place */
|
||||||
|
@ -599,7 +601,6 @@ init_heap(rb_objspace_t *objspace)
|
||||||
|
|
||||||
objspace->profile.invoke_time = getrusage_time();
|
objspace->profile.invoke_time = getrusage_time();
|
||||||
finalizer_table = st_init_numtable();
|
finalizer_table = st_init_numtable();
|
||||||
init_mark_stack(&objspace->mark_stack);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in a new issue