Bug #5090
closedSegfault using Enumerator
Description
Running bug_report.rb on my laptop simply raises a StopIteration as expected, but running it on a compute cluster node (Intel Xeon 2.93 GHz - Nehalem series) generates a segfault (below, and in "gcc and output.txt" when getting the next element from an Enumerator.
Ruby was compiled as described in configure.log and make.log
$ ruby bug_report.rb bug_report.rb bug_report.rb
bug_report.rb:6: [BUG] Segmentation fault
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux]
-- control frame ----------
c:0009 p:---- s:0027 b:0027 l:000050 d:000050 CFUNC :next
c:0008 p:0011 s:0024 b:0024 l:0006c8 d:000023 BLOCK bug_report.rb:6
c:0007 p:---- s:0019 b:0019 l:000018 d:000018 FINISH
c:0006 p:---- s:0017 b:0017 l:0021d0 d:0021d0 CFUNC :each
c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC :each
c:0004 p:---- s:0013 b:0013 l:002100 d:002100 CFUNC :count
c:0003 p:0104 s:0010 b:0009 l:0006c8 d:001920 EVAL bug_report.rb:18
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:0006c8 d:0006c8 TOP
-- Ruby level backtrace information ----------------------------------------
bug_report.rb:18:in <main>' bug_report.rb:18:in
count'
bug_report.rb:18:in each' bug_report.rb:18:in
each'
bug_report.rb:6:in block in <main>' bug_report.rb:6:in
next'
-- C level backtrace information -------------------------------------------
/home/585/rxs585/.rvm/rubies/ruby-1.9.2-p180/lib/libruby.so.1.9(rb_vm_bugreport+0x66) [0x7ffff7a8fde6]
/home/585/rxs585/.rvm/rubies/ruby-1.9.2-p180/lib/libruby.so.1.9(rb_bug+0x189) [0x7ffff79087f9]
/home/585/rxs585/.rvm/rubies/ruby-1.9.2-p180/lib/libruby.so.1.9 [0x7ffff79f55fe]
/lib64/libpthread.so.0 [0x7ffff7651b10]
[0x7ffff7ffa850]
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
Aborted
Files
Updated by mame (Yusuke Endoh) over 12 years ago
Could you show gdb backtrace?
$ gdb --args ruby bug_report.rb bug_report.rb bug_report.rb
(gdb) run
(gdb) bt
--
Yusuke Endoh mame@tsg.ne.jp
Updated by robsyme (Robert Syme) over 12 years ago
$ gdb --args ruby bug_report.rb bug_report.rb bug_report.rb
GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-32.el5_6.2)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/...
Reading symbols from /home/585/rxs585/.rvm/rubies/ruby-1.9.2-p180/bin/ruby...(no debugging symbols found)...done.
(gdb) run
Starting program: /home/585/rxs585/.rvm/rubies/ruby-1.9.2-p180/bin/ruby bug_report.rb bug_report.rb bug_report.rb
[Thread debugging using libthread_db enabled]
[New Thread 0x40003940 (LWP 15263)]
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7ffa850 in ?? ()
(gdb) bt
#0 0x00007ffff7ffa850 in ?? ()
#1 0x000000000076fdd0 in ?? ()
#2 0x00000000029ea4c3 in ?? ()
#3 0x00007ffff7863e20 in ?? () from /home/585/rxs585/.rvm/rubies/ruby-1.9.2-p180/lib/libruby.so.1.9
#4 0x0000000000553418 in ?? ()
#5 0x0000000000772920 in ?? ()
#6 0x00000000006473d8 in ?? ()
#7 0x000000000076fdd0 in ?? ()
#8 0x00000000006473f0 in ?? ()
#9 0x00007ffff785e000 in ?? ()
#10 0x0000000000000000 in ?? ()
Updated by robsyme (Robert Syme) over 12 years ago
I notice that gdb reports "no debugging symbols found". Do I need to recompile ruby for this to work? Do I need to provide a particular flag to configure, and if so, what flag? Sorry for my ignorance, this is my first ruby bug report.
Updated by mame (Yusuke Endoh) over 12 years ago
Umm, thanks. But I have no idea :-)
gcc -g generates binary with debugging symbol.
But I think that the option is set by default if you build it from a tarball.
I'm not sure if rvm might tweak build option. I'm not familiar with rvm.
Can anyone who is familiar with rvm, answer?
--
Yusuke Endoh mame@tsg.ne.jp
Updated by Eregon (Benoit Daloze) over 12 years ago
On 24 July 2011 16:30, Robert Syme rob.syme@gmail.com wrote:
I notice that gdb reports "no debugging symbols found". Do I need to recompile ruby for this to work? Do I need to provide a particular flag to configure, and if so, what flag? Sorry for my ignorance, this is my first ruby bug report.
On 24 July 2011 16:37, Yusuke Endoh mame@tsg.ne.jp wrote:
I'm not sure if rvm might tweak build option. Â I'm not familiar with rvm.
Can anyone who is familiar with rvm, answer?
http://beginrescueend.com/rubies/installing/ says to use:
export optflags
Updated by robsyme (Robert Syme) over 12 years ago
$ export optflags="-O0 -ggdb"
$ rvm install 1.9.2-p290
$ ruby bug_report.rb bug_report.rb bug_report.rb
Everything works as expected. I should have just tried with the latest patchlevel before submitting the report. Sorry guys! Closing.
-r
Updated by kosaki (Motohiro KOSAKI) over 12 years ago
- Status changed from Open to Closed