#253: Fibers are unsupported --------------------------------+------------------------------------------- Reporter: jvoorhis@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: fiber segfault --------------------------------+------------------------------------------- An example of macruby 0.4 segfaulting on Fibers follows. Matt Aimonetti reports similar findings at http://lists.macosforge.org/pipermail/macruby- devel/2009-May/001717.html, including a failure to require 'fiber' in the 0.5 branch. ~ % macruby -v MacRuby version 0.4 (ruby 1.9.1) [universal-darwin9.5, x86_64] ~ % macruby -e 'Fiber.new{puts"hey"}.resume' hey -e:1: [BUG] Segmentation fault MacRuby version 0.4 (ruby 1.9.1) [universal-darwin9.5, x86_64] -- stack frame ------------ 0000 (0xc08000060): 00000004 0001 (0xc08000068): 00000000 0002 (0xc08000070): 00000004 0003 (0xc08000078): 00000000 0004 (0xc08000080): 00000004 0005 (0xc08000088): 8000867c0 0006 (0xc08000090): 800030800 0007 (0xc08000098): 00000004 0008 (0xc080000a0): 00000000 <- lfp <- dfp -- control frame ---------- c:0004 p:---- s:0009 b:0009 l:000008 d:000008 CFUNC :resume c:0003 p:0019 s:0006 b:0006 l:002348 d:002348 TOP -e:1 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited: c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP --------------------------- DBG> : "-e:1:in `resume'" DBG> : "-e:1:in `<main>'" -- backtrace of native function call (Use addr2line) -- 0x10010f301 0x100029544 0x100029628 0x1000c245d 0x7fff82bf13aa 0x7fff5fc328d8 ------------------------------------------------------- zsh: abort macruby -e 'Fiber.new{puts"hey"}.resume' -- Ticket URL: <http://www.macruby.org/trac/ticket/253> MacRuby <http://macruby.org/>
#253: Fibers are unsupported --------------------------------+------------------------------------------- Reporter: jvoorhis@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: fiber segfault --------------------------------+------------------------------------------- Comment(by jvoorhis@…): Apologies for the junk formatting. Let's try this again. {{{ ~ % macruby -v MacRuby version 0.4 (ruby 1.9.1) [universal-darwin9.5, x86_64] ~ % macirb
Fiber.new{puts"hey"}.resume hey (irb):1: [BUG] Segmentation fault MacRuby version 0.4 (ruby 1.9.1) [universal-darwin9.5, x86_64]
-- stack frame ------------ 0000 (0xc08000060): 00000004 0001 (0xc08000068): 00000000 0002 (0xc08000070): 00000004 0003 (0xc08000078): 00000000 0004 (0xc08000080): 00000004 0005 (0xc08000088): 00000000 0006 (0xc08000090): 10039cab0 0007 (0xc08000098): 80030a2c0 0008 (0xc080000a0): 8006323c0 0009 (0xc080000a8): 00000004 0010 (0xc080000b0): 8006cf740 0011 (0xc080000b8): 00000004 0012 (0xc080000c0): 100398010 0013 (0xc080000c8): 00000004 0014 (0xc080000d0): c080ffec8 0015 (0xc080000d8): 00000004 0016 (0xc080000e0): 8006cf798 0017 (0xc080000e8): 8006323c0 0018 (0xc080000f0): 00000004 0019 (0xc080000f8): 80068a7e0 0020 (0xc08000100): 80066f720 0021 (0xc08000108): 00000004 0022 (0xc08000110): c080ffd08 0023 (0xc08000118): 00000004 0024 (0xc08000120): 1003a81d0 0025 (0xc08000128): 00000004 0026 (0xc08000130): c080ffc98 0027 (0xc08000138): 00000004 0028 (0xc08000140): c08000110 (= 22) 0029 (0xc08000148): 00000004 0030 (0xc08000150): 00000004 0031 (0xc08000158): c080ffb48 0032 (0xc08000160): 8004dd8a0 0033 (0xc08000168): 00000004 0034 (0xc08000170): c08000140 (= 28) 0035 (0xc08000178): 80060aaa0 0036 (0xc08000180): 00000003 0037 (0xc08000188): 00000004 0038 (0xc08000190): 80068a828 0039 (0xc08000198): 00000004 0040 (0xc080001a0): 100398b60 0041 (0xc080001a8): 100398370 0042 (0xc080001b0): 00000004 0043 (0xc080001b8): c080ff988 0044 (0xc080001c0): 00000004 0045 (0xc080001c8): 00000004 0046 (0xc080001d0): 00000004 0047 (0xc080001d8): 00000004 0048 (0xc080001e0): 00000004 0049 (0xc080001e8): 00000004 0050 (0xc080001f0): 00000004 0051 (0xc080001f8): c08000190 (= 38) 0052 (0xc08000200): 800638520 0053 (0xc08000208): 80060aaa0 0054 (0xc08000210): 00000003 0055 (0xc08000218): 00000004 0056 (0xc08000220): 00000000 0057 (0xc08000228): 00000004 0058 (0xc08000230): 800612160 0059 (0xc08000238): 800638520 0060 (0xc08000240): 80060aaa0 0061 (0xc08000248): 80052c360 0062 (0xc08000250): 00000003 0063 (0xc08000258): 00000004 0064 (0xc08000260): 00000000 0065 (0xc08000268): 00000004 0066 (0xc08000270): 80060aaa0 0067 (0xc08000278): 8005e5260 0068 (0xc08000280): 80052c360 0069 (0xc08000288): 00000003 0070 (0xc08000290): 00000004 0071 (0xc08000298): 00000000 0072 (0xc080002a0): 00000004 0073 (0xc080002a8): 00000000 0074 (0xc080002b0): 00000004 0075 (0xc080002b8): 8004c71e0 0076 (0xc080002c0): 8004c6fa0 0077 (0xc080002c8): 00000004 0078 (0xc080002d0): 00000000 <- lfp <- dfp -- control frame ---------- c:0024 p:---- s:0079 b:0079 l:000078 d:000078 CFUNC :resume c:0023 p:0019 s:0076 b:0076 l:0026b8 d:000b28 EVAL (irb):1 c:0022 p:---- s:0074 b:0074 l:000073 d:000073 FINISH :empty? c:0021 p:---- s:0072 b:0072 l:000071 d:000071 CFUNC :eval c:0020 p:0023 s:0065 b:0065 l:000064 d:000064 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb/workspace.rb:80 c:0019 p:0025 s:0058 b:0057 l:000056 d:000056 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb/context.rb:218 c:0018 p:0024 s:0052 b:0052 l:001bf8 d:000051 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:149 c:0017 p:0025 s:0044 b:0044 l:000043 d:000043 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:263 c:0016 p:0009 s:0039 b:0039 l:001bf8 d:000038 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:146 c:0015 p:0110 s:0035 b:0035 l:000022 d:000034 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:244 c:0014 p:---- s:0034 b:0034 l:000033 d:000033 FINISH :block_given? c:0013 p:---- s:0032 b:0032 l:000031 d:000031 CFUNC :loop c:0012 p:0007 s:0029 b:0029 l:000022 d:000028 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:230 c:0011 p:---- s:0029 b:0029 l:000028 d:000028 FINISH :each c:0010 p:---- s:0027 b:0027 l:000026 d:000026 CFUNC :catch c:0009 p:0017 s:0023 b:0023 l:000022 d:000022 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:229 c:0008 p:0034 s:0020 b:0020 l:001bf8 d:001bf8 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:145 c:0007 p:0009 s:0017 b:0017 l:0025a8 d:000016 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:69 c:0006 p:---- s:0017 b:0017 l:000016 d:000016 FINISH :(null) c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC :catch c:0004 p:0147 s:0011 b:0011 l:0025a8 d:0025a8 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:68 c:0003 p:0033 s:0006 b:0006 l:000005 d:000005 TOP /usr/local/bin/macirb:12 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited: c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP --------------------------- DBG> : "(irb):1:in `resume'" DBG> : "(irb):1:in `irb_binding'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb/workspace.rb:80:in `eval'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb/workspace.rb:80:in `evaluate'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb/context.rb:218:in `evaluate'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:149:in `block (2 levels) in eval_input'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:263:in `signal_status'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:146:in `block in eval_input'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:244:in `block (2 levels) in each_top_level_statement'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:230:in `loop'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:230:in `block in each_top_level_statement'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:229:in `catch'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb /ruby-lex.rb:229:in `each_top_level_statement'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:145:in `eval_input'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:69:in `block in start'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:68:in `catch'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1/irb.rb:68:in `start'" DBG> : "/usr/local/bin/macirb:12:in `<main>'" -- backtrace of native function call (Use addr2line) -- 0x10010f301 0x100029544 0x100029628 0x1000c245d 0x7fff82bf13aa 0x7fff84729c96 ------------------------------------------------------- zsh: abort macirb }}} Replying to [ticket:253 jvoorhis@…]:
An example of macruby 0.4 segfaulting on Fibers follows. Matt Aimonetti reports similar findings at http://lists.macosforge.org/pipermail/macruby- devel/2009-May/001717.html, including a failure to require 'fiber' in the 0.5 branch.
~ % macruby -v MacRuby version 0.4 (ruby 1.9.1) [universal-darwin9.5, x86_64] ~ % macruby -e 'Fiber.new{puts"hey"}.resume' hey -e:1: [BUG] Segmentation fault MacRuby version 0.4 (ruby 1.9.1) [universal-darwin9.5, x86_64]
-- stack frame ------------ 0000 (0xc08000060): 00000004 0001 (0xc08000068): 00000000 0002 (0xc08000070): 00000004 0003 (0xc08000078): 00000000 0004 (0xc08000080): 00000004 0005 (0xc08000088): 8000867c0 0006 (0xc08000090): 800030800 0007 (0xc08000098): 00000004 0008 (0xc080000a0): 00000000 <- lfp <- dfp -- control frame ---------- c:0004 p:---- s:0009 b:0009 l:000008 d:000008 CFUNC :resume c:0003 p:0019 s:0006 b:0006 l:002348 d:002348 TOP -e:1 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited: c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP --------------------------- DBG> : "-e:1:in `resume'" DBG> : "-e:1:in `<main>'" -- backtrace of native function call (Use addr2line) -- 0x10010f301 0x100029544 0x100029628 0x1000c245d 0x7fff82bf13aa 0x7fff5fc328d8 ------------------------------------------------------- zsh: abort macruby -e 'Fiber.new{puts"hey"}.resume'
-- Ticket URL: <http://www.macruby.org/trac/ticket/253#comment:1> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby