Project

General

Profile

This project is closed and read-only.

Actions

Feature #3930

closed

testsuite failed in sigsegv, it aborts after rb_f_sleep

Feature #3930: testsuite failed in sigsegv, it aborts after rb_f_sleep

Added by jojelino (jojelino _) almost 16 years ago. Updated over 15 years ago.

Status:
Third Party's Issue
Assignee:
-
[ruby-core:32747]

Description

=begin
the faulting ruby function was sleep(0.1)
gdb
set args ruby sample/test.rb
....
cropped

sample/test.rb:signal
Breakpoint 1, rb_f_sleep (argc=0x1, argv=0xb900f8) at process.c:3325
3325 {
(gdb) n
3328 beg = time(0);
(gdb)
3329 if (argc == 0) {
(gdb)
3328 beg = time(0);
(gdb) c
Continuing.
.ok 1 (sample/test.rb:1742:in `

')

Breakpoint 1, rb_f_sleep (argc=0x1, argv=0xb900dc) at process.c:3325
3325 {
(gdb) n
3328 beg = time(0);
(gdb)
3329 if (argc == 0) {
(gdb)
3328 beg = time(0);
(gdb)
3329 if (argc == 0) {
(gdb)
3332 else if (argc == 1) {
(gdb)
3333 rb_thread_wait_for(rb_time_interval(argv[0]));
(gdb)

Program received signal SIGSEGV, Segmentation fault.
0x77b66502 in msvcrt!_abnormal_termination ()
from /cygdrive/c/WINDOWS/system32/msvcrt.dll
(gdb)
Single stepping until exit from function msvcrt!_abnormal_termination,
which has no line number information.
0x7c968574 in ntdll!LdrEnumerateLoadedModules ()
from /cygdrive/c/WINDOWS/system32/ntdll.dll
(gdb) bt
#0 0x7c968574 in ntdll!LdrEnumerateLoadedModules ()
from /cygdrive/c/WINDOWS/system32/ntdll.dll
#1 0x0022f614 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

actually it halted while ruby vm interpreter increases its pc and get context of this thread.
=end


Files

rbconfig.rb (8.37 KB) rbconfig.rb rbconfig jojelino (jojelino _), 10/12/2010 09:48 AM

Related issues 1 (0 open1 closed)

Related to Ruby - Bug #4566: followup of [ruby-core:32747] Third Party's Issuenobu (Nobuyoshi Nakada)Actions

Updated by jojelino (jojelino _) almost 16 years ago Actions #1

=begin
oh, i must mention that this error is gone by disabling compiler optimization -O
so there would be some glitches such that compiler think some instruction is able to omitted or reordered... which introduces sigsegv...
above sigsegv is from i686-pc-mingw32-gcc 4.6.0 20101011.
it is recommended to add extra code so that compiler can be acknowledged from it.
=end

Updated by naruse (Yui NARUSE) almost 16 years ago Actions #2

  • Status changed from Open to Third Party's Issue

=begin
Hmm, I think this is a GCC's bug.
=end

Actions

Also available in: PDF Atom