[ruby-dev:26323] Re: rb_gc_mark_threads spin
From:
Tanaka Akira <akr@...17n.org>
Date:
2005-06-10 05:54:47 UTC
List:
ruby-dev #26323
In article <TYOMLEM04Rqf69aZbLA0000002d@tyomlvem02.e2k.ad.ge.com>,
nobuyoshi nakada <nobuyoshi.nakada@ge.com> writes:
> うーん、backtraceは取れますか。
とりあえず 5つとれました。
------------------------------------------------------------
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `test/runner.rb test_ma'.
Program terminated with signal 6, Aborted.
#0 0x400997c1 in kill () from /lib/libc.so.6
#0 0x400997c1 in kill () from /lib/libc.so.6
#1 0x40099545 in raise () from /lib/libc.so.6
#2 0x4009aa88 in abort () from /lib/libc.so.6
#3 0x080df0b6 in rb_bug (fmt=0x0) at error.c:214
#4 0x080bc1d2 in sigsegv (sig=11) at signal.c:523
#5 <signal handler called>
#6 0x00000051 in ?? ()
#7 0x080beb07 in st_lookup (table=0x8831978, key=3967, value=0xbfff08e8) at st.c:264
#8 0x08054773 in search_method (klass=1092526724, id=3967, origin=0xbfff0914) at eval.c:415
#9 0x080547c9 in rb_get_method_body (klassp=0xbfff0950, idp=0xbfff0954, noexp=0xbfff0940) at eval.c:436
#10 0x08054978 in rb_method_node (klass=1092526724, id=3967) at eval.c:498
#11 0x0805bc31 in rb_respond_to (obj=1092526744, id=7561) at eval.c:4106
#12 0x0808a124 in convert_type (val=1092526744, tname=0x80e549e "IO", method=0x90dd288 "x\026軆bQ", raise=0)
at object.c:2031
#13 0x0808a35f in rb_check_convert_type (val=1092526744, type=14, tname=0x80e549e "IO", method=0x80e459c "to_io")
at object.c:2075
#14 0x0806c8a1 in rb_stat (file=1092526744, st=0xbfff0a10) at file.c:634
#15 0x0806d258 in rb_file_s_size (klass=1075616372, fname=1092526744) at file.c:1417
#16 0x0806bda2 in call_cfunc (func=0x806d240 <rb_file_s_size>, recv=1075616372, len=142809464, argc=135313800,
argv=0xbfff0cb8) at eval.c:5581
#17 0x0805edf9 in rb_call0 (klass=1075616352, recv=1075616372, id=4273, oid=151900808, argc=1, argv=0xbfff0cb8,
body=0x401c9358, nosuper=0) at eval.c:5726
#18 0x0805f0b8 in rb_call (klass=1075616352, recv=1075616372, mid=4273, argc=1, argv=0xbfff0cb8, scope=0) at eval.c:5948
#19 0x0805991c in rb_eval (self=1094146784, n=0x90dd288) at ruby.h:642
#20 0x080591d5 in rb_eval (self=1094146784, n=0x90dd288) at eval.c:3546
#21 0x0805e8b3 in rb_call0 (klass=1094149024, recv=1094146784, id=87441, oid=151900808, argc=0, argv=0xbfff1b50,
body=0x41377ebc, nosuper=0) at eval.c:5855
#22 0x0805f0b8 in rb_call (klass=1094149024, recv=1094146784, mid=87441, argc=2, argv=0xbfff1b48, scope=1) at eval.c:5948
#23 0x0805991c in rb_eval (self=1094146784, n=0x90dd288) at ruby.h:642
#24 0x080591d5 in rb_eval (self=1094146784, n=0x90dd288) at eval.c:3546
#25 0x0805e8b3 in rb_call0 (klass=1094149024, recv=1094146784, id=87449, oid=151900808, argc=0, argv=0xbfff2cbc,
body=0x413779f8, nosuper=0) at eval.c:5855
#26 0x0805f0b8 in rb_call (klass=1094149024, recv=1094146784, mid=87449, argc=0, argv=0xbfff2cbc, scope=1) at eval.c:5948
#27 0x0805f324 in rb_f_send (argc=0, argv=0xbfff2cbc, recv=1094146784) at ruby.h:642
#28 0x0806bdca in call_cfunc (func=0x805f2a0 <rb_f_send>, recv=1094146784, len=142809464, argc=135313800, argv=0xbfff2cb8)
at eval.c:5584
#29 0x0805edf9 in rb_call0 (klass=1075661972, recv=1094146784, id=3905, oid=151900808, argc=1, argv=0xbfff2cb8,
body=0x401d2d40, nosuper=0) at eval.c:5726
#30 0x0805f0b8 in rb_call (klass=1075661972, recv=1094146784, mid=3905, argc=1, argv=0xbfff2cb8, scope=1) at eval.c:5948
#31 0x0805991c in rb_eval (self=1094146784, n=0x90dd288) at ruby.h:642
#32 0x08058fad in rb_eval (self=1094146784, n=0x90dd288) at eval.c:3182
#33 0x080590f5 in rb_eval (self=1094146784, n=0x90dd288) at eval.c:3231
#34 0x0805e8b3 in rb_call0 (klass=1076017536, recv=1094146784, id=5145, oid=151900808, argc=0, argv=0xbfff416c,
body=0x401b559c, nosuper=0) at eval.c:5855
#35 0x0805f0b8 in rb_call (klass=1076017536, recv=1094146784, mid=5145, argc=1, argv=0xbfff4168, scope=0) at eval.c:5948
#36 0x0805991c in rb_eval (self=1094146964, n=0x90dd288) at ruby.h:642
#37 0x08064a0a in call_block (arg=0x8831978) at eval.c:8803
#38 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221178720, proc=1092723564) at eval.c:8741
#39 0x08064a4b in block_pass (self=135313800, node=0x8831978) at eval.c:8814
#40 0x0805a59a in rb_eval (self=1094146964, n=0x90dd288) at eval.c:3076
#41 0x0805cc77 in rb_yield_0 (val=1094146784, self=1094146964, klass=4, flags=0, avalue=0) at eval.c:4918
#42 0x0805d299 in rb_yield (val=151900808) at eval.c:5000
#43 0x080d1dbf in rb_ary_each (ary=1094146864) at array.c:1250
#44 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1094146864, len=142809464, argc=135313800, argv=0x0)
at eval.c:5587
#45 0x0805edf9 in rb_call0 (klass=1075631232, recv=1094146864, id=3849, oid=151900808, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#46 0x0805f0b8 in rb_call (klass=1075631232, recv=1094146864, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#47 0x0805991c in rb_eval (self=1094146964, n=0x90dd288) at ruby.h:642
#48 0x0805b737 in rb_eval (self=1094146964, n=0x90dd288) at eval.c:3091
#49 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1094146964, id=5145, oid=151900808, argc=0, argv=0xbfff627c,
body=0x4022cba0, nosuper=0) at eval.c:5855
#50 0x0805f0b8 in rb_call (klass=1076018556, recv=1094146964, mid=5145, argc=1, argv=0xbfff6278, scope=0) at eval.c:5948
#51 0x0805991c in rb_eval (self=1094211244, n=0x90dd288) at ruby.h:642
#52 0x08064a0a in call_block (arg=0x8831978) at eval.c:8803
#53 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221187184, proc=1092723564) at eval.c:8741
#54 0x08064a4b in block_pass (self=135313800, node=0x8831978) at eval.c:8814
#55 0x0805a59a in rb_eval (self=1094211244, n=0x90dd288) at eval.c:3076
#56 0x0805cc77 in rb_yield_0 (val=1094146964, self=1094211244, klass=4, flags=0, avalue=0) at eval.c:4918
#57 0x0805d299 in rb_yield (val=151900808) at eval.c:5000
#58 0x080d1dbf in rb_ary_each (ary=1094211284) at array.c:1250
#59 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1094211284, len=142809464, argc=135313800, argv=0x0)
at eval.c:5587
#60 0x0805edf9 in rb_call0 (klass=1075631232, recv=1094211284, id=3849, oid=151900808, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#61 0x0805f0b8 in rb_call (klass=1075631232, recv=1094211284, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#62 0x0805991c in rb_eval (self=1094211244, n=0x90dd288) at ruby.h:642
#63 0x0805b737 in rb_eval (self=1094211244, n=0x90dd288) at eval.c:3091
#64 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1094211244, id=5145, oid=151900808, argc=0, argv=0xbfff838c,
body=0x4022cba0, nosuper=0) at eval.c:5855
#65 0x0805f0b8 in rb_call (klass=1076018556, recv=1094211244, mid=5145, argc=1, argv=0xbfff8388, scope=0) at eval.c:5948
#66 0x0805991c in rb_eval (self=1093040244, n=0x90dd288) at ruby.h:642
#67 0x08064a0a in call_block (arg=0x8831978) at eval.c:8803
#68 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221195648, proc=1092723564) at eval.c:8741
#69 0x08064a4b in block_pass (self=135313800, node=0x8831978) at eval.c:8814
#70 0x0805a59a in rb_eval (self=1093040244, n=0x90dd288) at eval.c:3076
#71 0x0805cc77 in rb_yield_0 (val=1094211244, self=1093040244, klass=4, flags=0, avalue=0) at eval.c:4918
#72 0x0805d299 in rb_yield (val=151900808) at eval.c:5000
#73 0x080d1dbf in rb_ary_each (ary=1093040464) at array.c:1250
#74 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1093040464, len=142809464, argc=135313800, argv=0x0)
at eval.c:5587
#75 0x0805edf9 in rb_call0 (klass=1075631232, recv=1093040464, id=3849, oid=151900808, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#76 0x0805f0b8 in rb_call (klass=1075631232, recv=1093040464, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#77 0x0805991c in rb_eval (self=1093040244, n=0x90dd288) at ruby.h:642
#78 0x0805b737 in rb_eval (self=1093040244, n=0x90dd288) at eval.c:3091
#79 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1093040244, id=5145, oid=151900808, argc=0, argv=0xbfffa49c,
body=0x4022cba0, nosuper=0) at eval.c:5855
#80 0x0805f0b8 in rb_call (klass=1076018556, recv=1093040244, mid=5145, argc=1, argv=0xbfffa498, scope=0) at eval.c:5948
#81 0x0805991c in rb_eval (self=1092727264, n=0x90dd288) at ruby.h:642
#82 0x0805b737 in rb_eval (self=1092727264, n=0x90dd288) at eval.c:3091
#83 0x0805e8b3 in rb_call0 (klass=1076596404, recv=1092727264, id=20225, oid=151900808, argc=0, argv=0x0, body=0x402c65f0,
nosuper=0) at eval.c:5855
#84 0x0805f0b8 in rb_call (klass=1076596404, recv=1092727264, mid=20225, argc=0, argv=0x0, scope=0) at eval.c:5948
#85 0x0805991c in rb_eval (self=1093040384, n=0x90dd288) at ruby.h:642
#86 0x0805e8b3 in rb_call0 (klass=1076594124, recv=1093040384, id=20113, oid=151900808, argc=0, argv=0x0, body=0x401aa598,
nosuper=0) at eval.c:5855
#87 0x0805f0b8 in rb_call (klass=1076594124, recv=1093040384, mid=20113, argc=0, argv=0x0, scope=2) at eval.c:5948
#88 0x0805991c in rb_eval (self=1093040384, n=0x90dd288) at ruby.h:642
#89 0x0805e8b3 in rb_call0 (klass=1076594124, recv=1093040384, id=5065, oid=151900808, argc=0, argv=0x0, body=0x401b64c4,
nosuper=0) at eval.c:5855
#90 0x0805f0b8 in rb_call (klass=1076594124, recv=1093040384, mid=5065, argc=0, argv=0x0, scope=0) at eval.c:5948
#91 0x0805991c in rb_eval (self=1076594124, n=0x90dd288) at ruby.h:642
#92 0x0805e8b3 in rb_call0 (klass=1076593724, recv=1076594124, id=5145, oid=151900808, argc=0, argv=0xbfffcb70,
body=0x40225210, nosuper=0) at eval.c:5855
#93 0x0805f0b8 in rb_call (klass=1076593724, recv=1076594124, mid=5145, argc=2, argv=0xbfffcb68, scope=0) at eval.c:5948
#94 0x0805991c in rb_eval (self=1075839016, n=0x90dd288) at ruby.h:642
#95 0x080597f0 in rb_eval (self=1075839016, n=0x90dd288) at eval.c:3359
#96 0x0805e8b3 in rb_call0 (klass=1075840736, recv=1075839016, id=5145, oid=151900808, argc=0, argv=0x0, body=0x40225af8,
nosuper=0) at eval.c:5855
#97 0x0805f0b8 in rb_call (klass=1075840736, recv=1075839016, mid=5145, argc=0, argv=0x0, scope=0) at eval.c:5948
#98 0x0805991c in rb_eval (self=1075840736, n=0x90dd288) at ruby.h:642
#99 0x0805e8b3 in rb_call0 (klass=1075840716, recv=1075840736, id=5145, oid=151900808, argc=0, argv=0xbfffe200,
body=0x4022b1ec, nosuper=0) at eval.c:5855
#100 0x0805f0b8 in rb_call (klass=1075840716, recv=1075840736, mid=5145, argc=2, argv=0xbfffe1f8, scope=0) at eval.c:5948
#101 0x0805991c in rb_eval (self=1075657232, n=0x90dd288) at ruby.h:642
#102 0x08059c41 in rb_eval (self=1075657232, n=0x90dd288) at ruby.h:671
#103 0x08056026 in ruby_exec_internal () at eval.c:1559
#104 0x08056046 in ruby_exec () at eval.c:1580
#105 0x08056090 in ruby_run () at eval.c:1597
#106 0x08053fe5 in main (argc=151900808, argv=0x90dd288, envp=0xbffff050) at main.c:38
------------------------------------------------------------
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `test/runner.rb test_ws'.
Program terminated with signal 6, Aborted.
#0 0x400997c1 in kill () from /lib/libc.so.6
#0 0x400997c1 in kill () from /lib/libc.so.6
#1 0x40099545 in raise () from /lib/libc.so.6
#2 0x4009aa88 in abort () from /lib/libc.so.6
#3 0x080df0b6 in rb_bug (fmt=0x0) at error.c:214
#4 0x080bc1d2 in sigsegv (sig=11) at signal.c:523
#5 <signal handler called>
#6 0x0806337c in blk_copy_prev (block=0x918e5e0) at eval.c:8043
#7 0x08063abf in proc_alloc (klass=3221187420, proc=0) at eval.c:8265
#8 0x08063bb9 in rb_block_proc () at eval.c:8328
#9 0x0805a577 in rb_eval (self=1090713944, n=0x918e5e0) at eval.c:3627
#10 0x0805e8b3 in rb_call0 (klass=1075662112, recv=1090713944, id=24153, oid=152626656, argc=0, argv=0xbfff621c,
body=0x40445ac8, nosuper=0) at eval.c:5855
#11 0x0805f0b8 in rb_call (klass=1075662112, recv=1090713944, mid=24153, argc=1, argv=0xbfff6218, scope=1) at eval.c:5948
#12 0x0805991c in rb_eval (self=1090713944, n=0x918e5e0) at ruby.h:642
#13 0x0805b737 in rb_eval (self=1090713944, n=0x918e5e0) at eval.c:3091
#14 0x08058fad in rb_eval (self=1090713944, n=0x918e5e0) at eval.c:3182
#15 0x0805e8b3 in rb_call0 (klass=1085307032, recv=1090713944, id=78449, oid=152626656, argc=0, argv=0xbfff76d4,
body=0x40b0bd08, nosuper=0) at eval.c:5855
#16 0x0805f0b8 in rb_call (klass=1085307032, recv=1090713944, mid=78449, argc=3, argv=0xbfff76c8, scope=1) at eval.c:5948
#17 0x0805991c in rb_eval (self=1090713944, n=0x918e5e0) at ruby.h:642
#18 0x0805e8b3 in rb_call0 (klass=1085307032, recv=1090713944, id=78393, oid=152626656, argc=0, argv=0xbfff7eec,
body=0x40b0bb64, nosuper=0) at eval.c:5855
#19 0x0805f0b8 in rb_call (klass=1085307032, recv=1090713944, mid=78393, argc=1, argv=0xbfff7ee8, scope=1) at eval.c:5948
#20 0x0805991c in rb_eval (self=1090713944, n=0x918e5e0) at ruby.h:642
#21 0x080591d5 in rb_eval (self=1090713944, n=0x918e5e0) at eval.c:3546
#22 0x08058bcd in rb_eval (self=1090713944, n=0x918e5e0) at eval.c:3017
#23 0x0805e8b3 in rb_call0 (klass=1085307032, recv=1090713944, id=35617, oid=152626656, argc=0, argv=0xbfff939c,
body=0x40b123c4, nosuper=0) at eval.c:5855
#24 0x0805f0b8 in rb_call (klass=1085307032, recv=1090713944, mid=35617, argc=1, argv=0xbfff9398, scope=1) at eval.c:5948
#25 0x0805991c in rb_eval (self=1090713944, n=0x918e5e0) at ruby.h:642
#26 0x0805837e in rb_eval (self=1090713944, n=0x918e5e0) at eval.c:2829
#27 0x0805e8b3 in rb_call0 (klass=1085307032, recv=1090713944, id=87241, oid=152626656, argc=0, argv=0xbfffa20c,
body=0x40b1f1c8, nosuper=0) at eval.c:5855
#28 0x0805f0b8 in rb_call (klass=1085307032, recv=1090713944, mid=87241, argc=1, argv=0xbfffa208, scope=1) at eval.c:5948
#29 0x0805991c in rb_eval (self=1090713944, n=0x918e5e0) at ruby.h:642
#30 0x0805e8b3 in rb_call0 (klass=1085307032, recv=1090713944, id=12649, oid=152626656, argc=0, argv=0xbfffaa2c,
body=0x4138141c, nosuper=0) at eval.c:5855
#31 0x0805f0b8 in rb_call (klass=1085307032, recv=1090713944, mid=12649, argc=1, argv=0xbfffaa28, scope=0) at eval.c:5948
#32 0x0805991c in rb_eval (self=1091087864, n=0x918e5e0) at ruby.h:642
#33 0x08058fad in rb_eval (self=1091087864, n=0x918e5e0) at eval.c:3182
#34 0x080590f5 in rb_eval (self=1091087864, n=0x918e5e0) at eval.c:3231
#35 0x08058bb8 in rb_eval (self=1091087864, n=0x918e5e0) at eval.c:3014
#36 0x0805e8b3 in rb_call0 (klass=1084830972, recv=1091087864, id=5145, oid=152626656, argc=0, argv=0xbfffc52c,
body=0x40ad3868, nosuper=0) at eval.c:5855
#37 0x0805f0b8 in rb_call (klass=1084830972, recv=1091087864, mid=5145, argc=1, argv=0xbfffc528, scope=1) at eval.c:5948
#38 0x0805991c in rb_eval (self=1091087864, n=0x918e5e0) at ruby.h:642
#39 0x08058fad in rb_eval (self=1091087864, n=0x918e5e0) at eval.c:3182
#40 0x080590f5 in rb_eval (self=1091087864, n=0x918e5e0) at eval.c:3231
#41 0x0805cc77 in rb_yield_0 (val=1090714384, self=1091087864, klass=4, flags=1, avalue=2) at eval.c:4918
#42 0x08069c5f in rb_thread_yield (arg=152626656, th=0x92e0598) at eval.c:12109
#43 0x0806994a in rb_thread_yield_0 (arg=152626656) at eval.c:12033
#44 0x080648ad in rb_block_pass (func=0x8069930 <rb_thread_yield_0>, arg=1090714384, proc=1090714264) at eval.c:8765
#45 0x08069b3d in rb_thread_start_1 () at eval.c:12061
#46 0x0805602d in ruby_exec_internal () at eval.c:1567
#47 0x08056046 in ruby_exec () at eval.c:1580
#48 0x08056090 in ruby_run () at eval.c:1597
#49 0x08053fe5 in main (argc=152626656, argv=0x918e5e0, envp=0xbfffded0) at main.c:38
------------------------------------------------------------
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `test/runner.rb test_ca'.
Program terminated with signal 6, Aborted.
#0 0x400997c1 in kill () from /lib/libc.so.6
#0 0x400997c1 in kill () from /lib/libc.so.6
#1 0x40099545 in raise () from /lib/libc.so.6
#2 0x4009aa88 in abort () from /lib/libc.so.6
#3 0x080df0b6 in rb_bug (fmt=0x0) at error.c:214
#4 0x080bc1d2 in sigsegv (sig=11) at signal.c:523
#5 <signal handler called>
#6 0x0806337c in blk_copy_prev (block=0x9038cf0) at eval.c:8043
#7 0x08063abf in proc_alloc (klass=3221191260, proc=0) at eval.c:8265
#8 0x08063bb9 in rb_block_proc () at eval.c:8328
#9 0x0805a577 in rb_eval (self=1092259884, n=0x9038cf0) at eval.c:3627
#10 0x0805e8b3 in rb_call0 (klass=1075662112, recv=1092259884, id=24153, oid=151227632, argc=0, argv=0xbfff711c,
body=0x40445ac8, nosuper=0) at eval.c:5855
#11 0x0805f0b8 in rb_call (klass=1075662112, recv=1092259884, mid=24153, argc=1, argv=0xbfff7118, scope=1) at eval.c:5948
#12 0x0805991c in rb_eval (self=1092259884, n=0x9038cf0) at ruby.h:642
#13 0x0805b737 in rb_eval (self=1092259884, n=0x9038cf0) at eval.c:3091
#14 0x08058fad in rb_eval (self=1092259884, n=0x9038cf0) at eval.c:3182
#15 0x0805e8b3 in rb_call0 (klass=1085305992, recv=1092259884, id=78449, oid=151227632, argc=0, argv=0xbfff85d4,
body=0x40b0bb64, nosuper=0) at eval.c:5855
#16 0x0805f0b8 in rb_call (klass=1085305992, recv=1092259884, mid=78449, argc=3, argv=0xbfff85c8, scope=1) at eval.c:5948
#17 0x0805991c in rb_eval (self=1092259884, n=0x9038cf0) at ruby.h:642
#18 0x0805e8b3 in rb_call0 (klass=1085305992, recv=1092259884, id=78393, oid=151227632, argc=0, argv=0xbfff8dec,
body=0x40b0b9fc, nosuper=0) at eval.c:5855
#19 0x0805f0b8 in rb_call (klass=1085305992, recv=1092259884, mid=78393, argc=1, argv=0xbfff8de8, scope=1) at eval.c:5948
#20 0x0805991c in rb_eval (self=1092259884, n=0x9038cf0) at ruby.h:642
#21 0x080591d5 in rb_eval (self=1092259884, n=0x9038cf0) at eval.c:3546
#22 0x08058bcd in rb_eval (self=1092259884, n=0x9038cf0) at eval.c:3017
#23 0x0805e8b3 in rb_call0 (klass=1085305992, recv=1092259884, id=35617, oid=151227632, argc=0, argv=0xbfffa29c,
body=0x40b11dd4, nosuper=0) at eval.c:5855
#24 0x0805f0b8 in rb_call (klass=1085305992, recv=1092259884, mid=35617, argc=1, argv=0xbfffa298, scope=1) at eval.c:5948
#25 0x0805991c in rb_eval (self=1092259884, n=0x9038cf0) at ruby.h:642
#26 0x0805837e in rb_eval (self=1092259884, n=0x9038cf0) at eval.c:2829
#27 0x0805e8b3 in rb_call0 (klass=1085305992, recv=1092259884, id=87241, oid=151227632, argc=0, argv=0xbfffb10c,
body=0x40b1f074, nosuper=0) at eval.c:5855
#28 0x0805f0b8 in rb_call (klass=1085305992, recv=1092259884, mid=87241, argc=1, argv=0xbfffb108, scope=1) at eval.c:5948
#29 0x0805991c in rb_eval (self=1092259884, n=0x9038cf0) at ruby.h:642
#30 0x0805e8b3 in rb_call0 (klass=1085305992, recv=1092259884, id=12649, oid=151227632, argc=0, argv=0xbfffb92c,
body=0x41381458, nosuper=0) at eval.c:5855
#31 0x0805f0b8 in rb_call (klass=1085305992, recv=1092259884, mid=12649, argc=1, argv=0xbfffb928, scope=0) at eval.c:5948
#32 0x0805991c in rb_eval (self=1092524684, n=0x9038cf0) at ruby.h:642
#33 0x08058fad in rb_eval (self=1092524684, n=0x9038cf0) at eval.c:3182
#34 0x080590f5 in rb_eval (self=1092524684, n=0x9038cf0) at eval.c:3231
#35 0x08058bb8 in rb_eval (self=1092524684, n=0x9038cf0) at eval.c:3014
#36 0x0805e8b3 in rb_call0 (klass=1084830132, recv=1092524684, id=5145, oid=151227632, argc=0, argv=0xbfffd42c,
body=0x40ad2634, nosuper=0) at eval.c:5855
#37 0x0805f0b8 in rb_call (klass=1084830132, recv=1092524684, mid=5145, argc=1, argv=0xbfffd428, scope=1) at eval.c:5948
#38 0x0805991c in rb_eval (self=1092524684, n=0x9038cf0) at ruby.h:642
#39 0x08058fad in rb_eval (self=1092524684, n=0x9038cf0) at eval.c:3182
#40 0x080590f5 in rb_eval (self=1092524684, n=0x9038cf0) at eval.c:3231
#41 0x0805cc77 in rb_yield_0 (val=1092260324, self=1092524684, klass=4, flags=1, avalue=2) at eval.c:4918
#42 0x08069c5f in rb_thread_yield (arg=151227632, th=0x9629eb8) at eval.c:12109
#43 0x0806994a in rb_thread_yield_0 (arg=151227632) at eval.c:12033
#44 0x080648ad in rb_block_pass (func=0x8069930 <rb_thread_yield_0>, arg=1092260324, proc=1092260204) at eval.c:8765
#45 0x08069b3d in rb_thread_start_1 () at eval.c:12061
#46 0x0805602d in ruby_exec_internal () at eval.c:1567
#47 0x08056046 in ruby_exec () at eval.c:1580
#48 0x08056090 in ruby_run () at eval.c:1597
#49 0x08053fe5 in main (argc=151227632, argv=0x9038cf0, envp=0xbfffedd0) at main.c:38
------------------------------------------------------------
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `test/runner.rb test_ws'.
Program terminated with signal 6, Aborted.
#0 0x400997c1 in kill () from /lib/libc.so.6
#0 0x400997c1 in kill () from /lib/libc.so.6
#1 0x40099545 in raise () from /lib/libc.so.6
#2 0x4009aa88 in abort () from /lib/libc.so.6
#3 0x080df0b6 in rb_bug (fmt=0x0) at error.c:214
#4 0x080bc1d2 in sigsegv (sig=11) at signal.c:523
#5 <signal handler called>
#6 st_lookup (table=0x0, key=55820, value=0xbfffb578) at st.c:264
#7 0x08054773 in search_method (klass=1090714784, id=55820, origin=0xbfffb5a4) at eval.c:415
#8 0x080547c9 in rb_get_method_body (klassp=0xbfffb600, idp=0xbfffb5e4, noexp=0xbfffb5e8) at eval.c:436
#9 0x0805f00a in rb_call (klass=1090714784, recv=1090714824, mid=55820, argc=1, argv=0xbfffb618, scope=0) at eval.c:5924
#10 0x0805b326 in rb_eval (self=1091086644, n=0x0) at ruby.h:642
#11 0x08058fad in rb_eval (self=1091086644, n=0x0) at eval.c:3182
#12 0x080590f5 in rb_eval (self=1091086644, n=0x0) at eval.c:3231
#13 0x08058bb8 in rb_eval (self=1091086644, n=0x0) at eval.c:3014
#14 0x0805e8b3 in rb_call0 (klass=1084831312, recv=1091086644, id=5145, oid=0, argc=0, argv=0xbfffd12c, body=0x40ad3f98,
nosuper=0) at eval.c:5855
#15 0x0805f0b8 in rb_call (klass=1084831312, recv=1091086644, mid=5145, argc=1, argv=0xbfffd128, scope=1) at eval.c:5948
#16 0x0805991c in rb_eval (self=1091086644, n=0x0) at ruby.h:642
#17 0x08058fad in rb_eval (self=1091086644, n=0x0) at eval.c:3182
#18 0x080590f5 in rb_eval (self=1091086644, n=0x0) at eval.c:3231
#19 0x0805cc77 in rb_yield_0 (val=1090715264, self=1091086644, klass=4, flags=1, avalue=2) at eval.c:4918
#20 0x08069c5f in rb_thread_yield (arg=0, th=0x93045f0) at eval.c:12109
#21 0x0806994a in rb_thread_yield_0 (arg=0) at eval.c:12033
#22 0x080648ad in rb_block_pass (func=0x8069930 <rb_thread_yield_0>, arg=1090715264, proc=1090715144) at eval.c:8765
#23 0x08069b3d in rb_thread_start_1 () at eval.c:12061
#24 0x0805602d in ruby_exec_internal () at eval.c:1567
#25 0x08056046 in ruby_exec () at eval.c:1580
#26 0x08056090 in ruby_run () at eval.c:1597
#27 0x08053fe5 in main (argc=0, argv=0x0, envp=0xbfffead0) at main.c:38
------------------------------------------------------------
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `test/runner.rb test_rp'.
Program terminated with signal 6, Aborted.
#0 0x400997c1 in kill () from /lib/libc.so.6
#0 0x400997c1 in kill () from /lib/libc.so.6
#1 0x40099545 in raise () from /lib/libc.so.6
#2 0x4009aa88 in abort () from /lib/libc.so.6
#3 0x080df0b6 in rb_bug (fmt=0x0) at error.c:214
#4 0x080bc1d2 in sigsegv (sig=11) at signal.c:523
#5 <signal handler called>
#6 st_lookup (table=0x2, key=3967, value=0xbffde1b8) at st.c:264
#7 0x08054773 in search_method (klass=1090383564, id=3967, origin=0xbffde1e4) at eval.c:415
#8 0x080547c9 in rb_get_method_body (klassp=0xbffde220, idp=0xbffde224, noexp=0xbffde210) at eval.c:436
#9 0x08054978 in rb_method_node (klass=1090383564, id=3967) at eval.c:498
#10 0x0805bc31 in rb_respond_to (obj=1090383584, id=4369) at eval.c:4106
#11 0x0808a124 in convert_type (val=1090383584, tname=0x80fbded "String", method=0x2 <Address 0x2 out of bounds>, raise=0)
at object.c:2031
#12 0x0808a35f in rb_check_convert_type (val=1090383584, type=7, tname=0x80fbded "String", method=0x80e5cf1 "to_str")
at object.c:2075
#13 0x080c02dc in rb_check_string_type (str=2) at string.c:575
#14 0x080c1048 in rb_str_index_m (argc=2, argv=0x2, str=1090386504) at string.c:1135
#15 0x0806bdca in call_cfunc (func=0x80c0fc0 <rb_str_index_m>, recv=1090386504, len=2, argc=135310512, argv=0xbffde538)
at eval.c:5584
#16 0x0805edf9 in rb_call0 (klass=1075652612, recv=1090386504, id=4337, oid=2, argc=1, argv=0xbffde538, body=0x401d23f4,
nosuper=0) at eval.c:5726
#17 0x0805f0b8 in rb_call (klass=1075652612, recv=1090386504, mid=4337, argc=1, argv=0xbffde538, scope=0) at eval.c:5948
#18 0x0805991c in rb_eval (self=1090386564, n=0x2) at ruby.h:642
#19 0x080591d5 in rb_eval (self=1090386564, n=0x2) at eval.c:3546
#20 0x08058cd8 in rb_eval (self=1090386564, n=0x2) at eval.c:3052
#21 0x08058fad in rb_eval (self=1090386564, n=0x2) at eval.c:3182
#22 0x0805e8b3 in rb_call0 (klass=1078251612, recv=1090386564, id=35561, oid=2, argc=0, argv=0xbffe002c, body=0x404566fc,
nosuper=0) at eval.c:5855
#23 0x0805f0b8 in rb_call (klass=1078251612, recv=1090386564, mid=35561, argc=1, argv=0xbffe0028, scope=1) at eval.c:5948
#24 0x0805991c in rb_eval (self=1090386564, n=0x2) at ruby.h:642
#25 0x080597f0 in rb_eval (self=1090386564, n=0x2) at eval.c:3359
#26 0x0805e8b3 in rb_call0 (klass=1078251612, recv=1090386564, id=7401, oid=2, argc=0, argv=0x0, body=0x40456490, nosuper=0)
at eval.c:5855
#27 0x0805f0b8 in rb_call (klass=1078251612, recv=1090386564, mid=7401, argc=0, argv=0x0, scope=0) at eval.c:5948
#28 0x0805991c in rb_eval (self=1077777952, n=0x2) at ruby.h:642
#29 0x080591d5 in rb_eval (self=1077777952, n=0x2) at eval.c:3546
#30 0x0805e8b3 in rb_call0 (klass=1077777672, recv=1077777952, id=35537, oid=2, argc=0, argv=0xbffe1cdc, body=0x404667c8,
nosuper=0) at eval.c:5855
#31 0x0805f0b8 in rb_call (klass=1077777672, recv=1077777952, mid=35537, argc=1, argv=0xbffe1cd8, scope=1) at eval.c:5948
#32 0x0805991c in rb_eval (self=1077777952, n=0x2) at ruby.h:642
#33 0x0805a51b in rb_eval (self=1077777952, n=0x2) at eval.c:3154
#34 0x08059195 in rb_eval (self=1077777952, n=0x2) at eval.c:3540
#35 0x0805e8b3 in rb_call0 (klass=1077777672, recv=1077777952, id=34257, oid=2, argc=0, argv=0xbffe318c, body=0x40467704,
nosuper=0) at eval.c:5855
#36 0x0805f0b8 in rb_call (klass=1077777672, recv=1077777952, mid=34257, argc=1, argv=0xbffe3188, scope=0) at eval.c:5948
#37 0x0805991c in rb_eval (self=1090387004, n=0x2) at ruby.h:642
#38 0x080591d5 in rb_eval (self=1090387004, n=0x2) at eval.c:3546
#39 0x08058bb8 in rb_eval (self=1090387004, n=0x2) at eval.c:3014
#40 0x0805e8b3 in rb_call0 (klass=1077794472, recv=1090387004, id=33889, oid=2, argc=0, argv=0xbffe4670, body=0x4048f358,
nosuper=0) at eval.c:5855
#41 0x0805f0b8 in rb_call (klass=1077794472, recv=1090387004, mid=33889, argc=2, argv=0xbffe4668, scope=1) at eval.c:5948
#42 0x0805991c in rb_eval (self=1090387004, n=0x2) at ruby.h:642
#43 0x0805b737 in rb_eval (self=1090387004, n=0x2) at eval.c:3091
#44 0x0805e8b3 in rb_call0 (klass=1077794472, recv=1090387004, id=34433, oid=2, argc=0, argv=0xbffe54f4, body=0x40494420,
nosuper=0) at eval.c:5855
#45 0x0805f0b8 in rb_call (klass=1077794472, recv=1090387004, mid=34433, argc=3, argv=0xbffe54e8, scope=0) at eval.c:5948
#46 0x0805991c in rb_eval (self=1090417024, n=0x2) at ruby.h:642
#47 0x0805cc77 in rb_yield_0 (val=1090387004, self=1090417024, klass=4, flags=0, avalue=0) at eval.c:4918
#48 0x0805a160 in rb_eval (self=1090417024, n=0x2) at eval.c:3171
#49 0x080591d5 in rb_eval (self=1090417024, n=0x2) at eval.c:3546
#50 0x0805cc77 in rb_yield_0 (val=1090387004, self=1090417024, klass=4, flags=0, avalue=0) at eval.c:4918
#51 0x0805a160 in rb_eval (self=1090387004, n=0x2) at eval.c:3171
#52 0x0805b7f2 in rb_eval (self=1090387004, n=0x2) at eval.c:3309
#53 0x080590f5 in rb_eval (self=1090387004, n=0x2) at eval.c:3231
#54 0x0805e8b3 in rb_call0 (klass=1077794472, recv=1090387004, id=5065, oid=2, argc=0, argv=0x0, body=0x4049a140, nosuper=0)
at eval.c:5855
#55 0x0805f0b8 in rb_call (klass=1077794472, recv=1090387004, mid=5065, argc=0, argv=0x0, scope=0) at eval.c:5948
#56 0x0805991c in rb_eval (self=1090417024, n=0x2) at ruby.h:642
#57 0x0805b737 in rb_eval (self=1090417024, n=0x2) at eval.c:3091
#58 0x0805e8b3 in rb_call0 (klass=1086240832, recv=1090417024, id=5065, oid=2, argc=0, argv=0xbffe8e7c, body=0x40bef094,
nosuper=0) at eval.c:5855
#59 0x0805f0b8 in rb_call (klass=1086240832, recv=1090417024, mid=5065, argc=1, argv=0xbffe8e78, scope=1) at eval.c:5948
#60 0x0805991c in rb_eval (self=1090417024, n=0x2) at ruby.h:642
#61 0x0805b737 in rb_eval (self=1090417024, n=0x2) at eval.c:3091
#62 0x080591d5 in rb_eval (self=1090417024, n=0x2) at eval.c:3546
#63 0x0805e8b3 in rb_call0 (klass=1086240832, recv=1090417024, id=34433, oid=2, argc=0, argv=0xbffea344, body=0x40bf0138,
nosuper=0) at eval.c:5855
#64 0x0805f0b8 in rb_call (klass=1086240832, recv=1090417024, mid=34433, argc=3, argv=0xbffea338, scope=0) at eval.c:5948
#65 0x0805991c in rb_eval (self=1090417324, n=0x2) at ruby.h:642
#66 0x080591d5 in rb_eval (self=1090417324, n=0x2) at eval.c:3546
#67 0x08058fad in rb_eval (self=1090417324, n=0x2) at eval.c:3182
#68 0x0805e8b3 in rb_call0 (klass=1086271632, recv=1090417324, id=74241, oid=2, argc=0, argv=0xbffeb824, body=0x40c0b474,
nosuper=0) at eval.c:5855
#69 0x0805f0b8 in rb_call (klass=1086271632, recv=1090417324, mid=74241, argc=3, argv=0xbffeb818, scope=1) at eval.c:5948
#70 0x0805991c in rb_eval (self=1090417324, n=0x2) at ruby.h:642
#71 0x0805e8b3 in rb_call0 (klass=1086271632, recv=1090417324, id=4049, oid=2, argc=0, argv=0xbffec054, body=0x40c0d490,
nosuper=0) at eval.c:5855
#72 0x0805f0b8 in rb_call (klass=1086271632, recv=1090417324, mid=4049, argc=3, argv=0xbffec048, scope=0) at eval.c:5948
#73 0x0805991c in rb_eval (self=1090418784, n=0x2) at ruby.h:642
#74 0x080591d5 in rb_eval (self=1090418784, n=0x2) at eval.c:3546
#75 0x0805e8b3 in rb_call0 (klass=1086170712, recv=1090418784, id=38785, oid=2, argc=0, argv=0xbffecee8, body=0x40c944a4,
nosuper=0) at eval.c:5855
#76 0x0805f0b8 in rb_call (klass=1086170712, recv=1090418784, mid=38785, argc=4, argv=0xbffeced8, scope=1) at eval.c:5948
#77 0x0805991c in rb_eval (self=1090418784, n=0x2) at ruby.h:642
#78 0x080591d5 in rb_eval (self=1090418784, n=0x2) at eval.c:3546
#79 0x0805e8b3 in rb_call0 (klass=1086170712, recv=1090418784, id=5249, oid=2, argc=2, argv=0xbffedd5c, body=0x40c964ac,
nosuper=0) at eval.c:5855
#80 0x0805f0b8 in rb_call (klass=1086170712, recv=1090418784, mid=5249, argc=3, argv=0xbffedd58, scope=0) at eval.c:5948
#81 0x0805991c in rb_eval (self=1090420984, n=0x2) at ruby.h:642
#82 0x0805e8b3 in rb_call0 (klass=1086155192, recv=1090420984, id=5249, oid=2, argc=2, argv=0xbffee59c, body=0x409cd7d4,
nosuper=0) at eval.c:5855
#83 0x0805f0b8 in rb_call (klass=1086155192, recv=1090420984, mid=5249, argc=3, argv=0xbffee598, scope=1) at eval.c:5948
#84 0x0805991c in rb_eval (self=1090420984, n=0x2) at ruby.h:642
#85 0x0805cc77 in rb_yield_0 (val=1090394544, self=1090420984, klass=4, flags=3, avalue=2) at eval.c:4918
#86 0x0806402f in proc_invoke (proc=1090403204, args=1090394544, self=1090420984, klass=0) at ruby.h:642
#87 0x0805ee99 in rb_call0 (klass=1090403264, recv=1090420984, id=5289, oid=2, argc=2, argv=0xbffef148, body=0x40fe3b20,
nosuper=0) at eval.c:5751
#88 0x0805f0b8 in rb_call (klass=1090403264, recv=1090420984, mid=5289, argc=2, argv=0xbffef148, scope=0) at eval.c:5948
#89 0x0805991c in rb_eval (self=1083845092, n=0x2) at ruby.h:642
#90 0x08059c41 in rb_eval (self=1083845092, n=0x2) at ruby.h:671
#91 0x0805e8b3 in rb_call0 (klass=1083860772, recv=1083845092, id=81641, oid=2, argc=0, argv=0xbfff022c, body=0x40c4f37c,
nosuper=0) at eval.c:5855
#92 0x0805f0b8 in rb_call (klass=1083860772, recv=1083845092, mid=81641, argc=0, argv=0xbfff022c, scope=1) at eval.c:5948
#93 0x0805f324 in rb_f_send (argc=0, argv=0xbfff022c, recv=1083845092) at ruby.h:642
#94 0x0806bdca in call_cfunc (func=0x805f2a0 <rb_f_send>, recv=1083845092, len=2, argc=135310512, argv=0xbfff0228)
at eval.c:5584
#95 0x0805edf9 in rb_call0 (klass=1075661972, recv=1083845092, id=3905, oid=2, argc=1, argv=0xbfff0228, body=0x401d2d40,
nosuper=0) at eval.c:5726
#96 0x0805f0b8 in rb_call (klass=1075661972, recv=1083845092, mid=3905, argc=1, argv=0xbfff0228, scope=1) at eval.c:5948
#97 0x0805991c in rb_eval (self=1083845092, n=0x2) at ruby.h:642
#98 0x08058fad in rb_eval (self=1083845092, n=0x2) at eval.c:3182
#99 0x080590f5 in rb_eval (self=1083845092, n=0x2) at eval.c:3231
#100 0x0805e8b3 in rb_call0 (klass=1076017536, recv=1083845092, id=5145, oid=2, argc=0, argv=0xbfff16dc, body=0x401b559c,
nosuper=0) at eval.c:5855
#101 0x0805f0b8 in rb_call (klass=1076017536, recv=1083845092, mid=5145, argc=1, argv=0xbfff16d8, scope=0) at eval.c:5948
#102 0x0805991c in rb_eval (self=1083846332, n=0x2) at ruby.h:642
#103 0x08064a0a in call_block (arg=0x2) at eval.c:8803
#104 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221167824, proc=1092723604) at eval.c:8741
#105 0x08064a4b in block_pass (self=135310512, node=0x2) at eval.c:8814
#106 0x0805a59a in rb_eval (self=1083846332, n=0x2) at eval.c:3076
#107 0x0805cc77 in rb_yield_0 (val=1083845092, self=1083846332, klass=4, flags=0, avalue=0) at eval.c:4918
#108 0x0805d299 in rb_yield (val=2) at eval.c:5000
#109 0x080d1dbf in rb_ary_each (ary=1083845232) at array.c:1250
#110 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1083845232, len=2, argc=135310512, argv=0x0)
at eval.c:5587
#111 0x0805edf9 in rb_call0 (klass=1075631232, recv=1083845232, id=3849, oid=2, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#112 0x0805f0b8 in rb_call (klass=1075631232, recv=1083845232, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#113 0x0805991c in rb_eval (self=1083846332, n=0x2) at ruby.h:642
#114 0x0805b737 in rb_eval (self=1083846332, n=0x2) at eval.c:3091
#115 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1083846332, id=5145, oid=2, argc=0, argv=0xbfff37ec, body=0x4022cba0,
nosuper=0) at eval.c:5855
#116 0x0805f0b8 in rb_call (klass=1076018556, recv=1083846332, mid=5145, argc=1, argv=0xbfff37e8, scope=0) at eval.c:5948
#117 0x0805991c in rb_eval (self=1083770672, n=0x2) at ruby.h:642
#118 0x08064a0a in call_block (arg=0x2) at eval.c:8803
#119 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221176288, proc=1092723604) at eval.c:8741
#120 0x08064a4b in block_pass (self=135310512, node=0x2) at eval.c:8814
#121 0x0805a59a in rb_eval (self=1083770672, n=0x2) at eval.c:3076
#122 0x0805cc77 in rb_yield_0 (val=1083846332, self=1083770672, klass=4, flags=0, avalue=0) at eval.c:4918
#123 0x0805d299 in rb_yield (val=2) at eval.c:5000
#124 0x080d1dbf in rb_ary_each (ary=1083788652) at array.c:1250
#125 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1083788652, len=2, argc=135310512, argv=0x0)
at eval.c:5587
#126 0x0805edf9 in rb_call0 (klass=1075631232, recv=1083788652, id=3849, oid=2, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#127 0x0805f0b8 in rb_call (klass=1075631232, recv=1083788652, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#128 0x0805991c in rb_eval (self=1083770672, n=0x2) at ruby.h:642
#129 0x0805b737 in rb_eval (self=1083770672, n=0x2) at eval.c:3091
#130 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1083770672, id=5145, oid=2, argc=0, argv=0xbfff58fc, body=0x4022cba0,
nosuper=0) at eval.c:5855
#131 0x0805f0b8 in rb_call (klass=1076018556, recv=1083770672, mid=5145, argc=1, argv=0xbfff58f8, scope=0) at eval.c:5948
#132 0x0805991c in rb_eval (self=1083820332, n=0x2) at ruby.h:642
#133 0x08064a0a in call_block (arg=0x2) at eval.c:8803
#134 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221184752, proc=1092723604) at eval.c:8741
#135 0x08064a4b in block_pass (self=135310512, node=0x2) at eval.c:8814
#136 0x0805a59a in rb_eval (self=1083820332, n=0x2) at eval.c:3076
#137 0x0805cc77 in rb_yield_0 (val=1083770672, self=1083820332, klass=4, flags=0, avalue=0) at eval.c:4918
#138 0x0805d299 in rb_yield (val=2) at eval.c:5000
#139 0x080d1dbf in rb_ary_each (ary=1083759632) at array.c:1250
#140 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1083759632, len=2, argc=135310512, argv=0x0)
at eval.c:5587
#141 0x0805edf9 in rb_call0 (klass=1075631232, recv=1083759632, id=3849, oid=2, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#142 0x0805f0b8 in rb_call (klass=1075631232, recv=1083759632, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#143 0x0805991c in rb_eval (self=1083820332, n=0x2) at ruby.h:642
#144 0x0805b737 in rb_eval (self=1083820332, n=0x2) at eval.c:3091
#145 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1083820332, id=5145, oid=2, argc=0, argv=0xbfff7a0c, body=0x4022cba0,
nosuper=0) at eval.c:5855
#146 0x0805f0b8 in rb_call (klass=1076018556, recv=1083820332, mid=5145, argc=1, argv=0xbfff7a08, scope=0) at eval.c:5948
#147 0x0805991c in rb_eval (self=1093040284, n=0x2) at ruby.h:642
#148 0x08064a0a in call_block (arg=0x2) at eval.c:8803
#149 0x08064905 in rb_block_pass (func=0x80649f0 <call_block>, arg=3221193216, proc=1092723604) at eval.c:8741
#150 0x08064a4b in block_pass (self=135310512, node=0x2) at eval.c:8814
#151 0x0805a59a in rb_eval (self=1093040284, n=0x2) at eval.c:3076
#152 0x0805cc77 in rb_yield_0 (val=1083820332, self=1093040284, klass=4, flags=0, avalue=0) at eval.c:4918
#153 0x0805d299 in rb_yield (val=2) at eval.c:5000
#154 0x080d1dbf in rb_ary_each (ary=1093040504) at array.c:1250
#155 0x0806bdd1 in call_cfunc (func=0x80d1d90 <rb_ary_each>, recv=1093040504, len=2, argc=135310512, argv=0x0)
at eval.c:5587
#156 0x0805edf9 in rb_call0 (klass=1075631232, recv=1093040504, id=3849, oid=2, argc=0, argv=0x0, body=0x401cd05c,
nosuper=0) at eval.c:5726
#157 0x0805f0b8 in rb_call (klass=1075631232, recv=1093040504, mid=3849, argc=0, argv=0x0, scope=0) at eval.c:5948
#158 0x0805991c in rb_eval (self=1093040284, n=0x2) at ruby.h:642
#159 0x0805b737 in rb_eval (self=1093040284, n=0x2) at eval.c:3091
#160 0x0805e8b3 in rb_call0 (klass=1076018556, recv=1093040284, id=5145, oid=2, argc=0, argv=0xbfff9b1c, body=0x4022cba0,
nosuper=0) at eval.c:5855
#161 0x0805f0b8 in rb_call (klass=1076018556, recv=1093040284, mid=5145, argc=1, argv=0xbfff9b18, scope=0) at eval.c:5948
#162 0x0805991c in rb_eval (self=1092727304, n=0x2) at ruby.h:642
#163 0x0805b737 in rb_eval (self=1092727304, n=0x2) at eval.c:3091
#164 0x0805e8b3 in rb_call0 (klass=1076596404, recv=1092727304, id=20225, oid=2, argc=0, argv=0x0, body=0x402c65f0,
nosuper=0) at eval.c:5855
#165 0x0805f0b8 in rb_call (klass=1076596404, recv=1092727304, mid=20225, argc=0, argv=0x0, scope=0) at eval.c:5948
#166 0x0805991c in rb_eval (self=1093040424, n=0x2) at ruby.h:642
#167 0x0805e8b3 in rb_call0 (klass=1076594124, recv=1093040424, id=20113, oid=2, argc=0, argv=0x0, body=0x401aa598,
nosuper=0) at eval.c:5855
#168 0x0805f0b8 in rb_call (klass=1076594124, recv=1093040424, mid=20113, argc=0, argv=0x0, scope=2) at eval.c:5948
#169 0x0805991c in rb_eval (self=1093040424, n=0x2) at ruby.h:642
#170 0x0805e8b3 in rb_call0 (klass=1076594124, recv=1093040424, id=5065, oid=2, argc=0, argv=0x0, body=0x401b64c4,
nosuper=0) at eval.c:5855
#171 0x0805f0b8 in rb_call (klass=1076594124, recv=1093040424, mid=5065, argc=0, argv=0x0, scope=0) at eval.c:5948
#172 0x0805991c in rb_eval (self=1076594124, n=0x2) at ruby.h:642
#173 0x0805e8b3 in rb_call0 (klass=1076593724, recv=1076594124, id=5145, oid=2, argc=0, argv=0xbfffc1f0, body=0x40225210,
nosuper=0) at eval.c:5855
#174 0x0805f0b8 in rb_call (klass=1076593724, recv=1076594124, mid=5145, argc=2, argv=0xbfffc1e8, scope=0) at eval.c:5948
#175 0x0805991c in rb_eval (self=1075839016, n=0x2) at ruby.h:642
#176 0x080597f0 in rb_eval (self=1075839016, n=0x2) at eval.c:3359
#177 0x0805e8b3 in rb_call0 (klass=1075840736, recv=1075839016, id=5145, oid=2, argc=0, argv=0x0, body=0x40225af8,
nosuper=0) at eval.c:5855
#178 0x0805f0b8 in rb_call (klass=1075840736, recv=1075839016, mid=5145, argc=0, argv=0x0, scope=0) at eval.c:5948
#179 0x0805991c in rb_eval (self=1075840736, n=0x2) at ruby.h:642
#180 0x0805e8b3 in rb_call0 (klass=1075840716, recv=1075840736, id=5145, oid=2, argc=0, argv=0xbfffd880, body=0x4022b1ec,
nosuper=0) at eval.c:5855
#181 0x0805f0b8 in rb_call (klass=1075840716, recv=1075840736, mid=5145, argc=2, argv=0xbfffd878, scope=0) at eval.c:5948
#182 0x0805991c in rb_eval (self=1075657232, n=0x2) at ruby.h:642
#183 0x08059c41 in rb_eval (self=1075657232, n=0x2) at ruby.h:671
#184 0x08056026 in ruby_exec_internal () at eval.c:1559
#185 0x08056046 in ruby_exec () at eval.c:1580
#186 0x08056090 in ruby_run () at eval.c:1597
#187 0x08053fe5 in main (argc=2, argv=0x2, envp=0xbfffe6d0) at main.c:38
------------------------------------------------------------
>
>> > いや、まったく。というか私の手元では[ruby-dev:26128]自体再現で
>> > きませんでしたし。
>>
>> おぉ。ちなみに、boron では再現できます。
>
> 1.8では再現できました。確かに[ruby-dev:26317]で起きなくなりますね。何が
> 関係してるんだろう?
さて?
あと、とりあえず無限ループの検査を書いてみました。無限ループより core
dump のほうがいいひと (って私以外にいるかどうかは怪しいところですが...)
はどうぞ。
Index: eval.c
===================================================================
RCS file: /src/ruby/eval.c,v
retrieving revision 1.787
diff -u -r1.787 eval.c
--- eval.c 9 Jun 2005 11:17:52 -0000 1.787
+++ eval.c 10 Jun 2005 05:51:28 -0000
@@ -9972,6 +9972,14 @@
#define FOREACH_THREAD(x) FOREACH_THREAD_FROM(curr_thread,x)
#define END_FOREACH(x) END_FOREACH_FROM(curr_thread,x)
+#define CHECK_FOREACH_THREAD_FROM(f,x,y) x = f; y = f; do { x = x->next; \
+ if (((long)y & 1) == 0) y = (rb_thread_t)((long)y | 1); else y = ((rb_thread_t)((long)y & ~1))->next; \
+ if (x != f && (rb_thread_t)((long)y & ~1) == x) rb_bug("thread list is not circular.");
+#define CHECK_END_FOREACH_FROM(f,x,y) } while (x != f)
+
+#define CHECK_FOREACH_THREAD(x,y) CHECK_FOREACH_THREAD_FROM(curr_thread,x,y)
+#define CHECK_END_FOREACH(x,y) CHECK_END_FOREACH_FROM(curr_thread,x,y)
+
struct thread_status_t {
NODE *node;
@@ -10212,14 +10220,15 @@
rb_gc_mark_threads()
{
rb_thread_t th;
+ rb_thread_t th_aux;
/* static global mark */
rb_gc_mark((VALUE)ruby_cref);
if (!curr_thread) return;
- FOREACH_THREAD(th) {
+ CHECK_FOREACH_THREAD(th,th_aux) {
rb_gc_mark(th->thread);
- } END_FOREACH(th);
+ } CHECK_END_FOREACH(th,th_aux);
if (new_thread.thread) {
rb_gc_mark(new_thread.thread->thread);
rb_gc_mark(new_thread.proc);
--
[田中 哲][たなか あきら][Tanaka Akira]