[#42344] [ruby-trunk - Feature #5964][Open] Make Symbols an Alternate Syntax for Strings — Tom Wardrop <tom@...>

23 messages 2012/02/03

[#42443] [ruby-trunk - Bug #5985][Open] miniruby skews "make benchmark" results — Eric Wong <normalperson@...>

21 messages 2012/02/08

[#42444] [ruby-trunk - Bug #5986][Open] Segmentation Fault — Luis Matta <levmatta@...>

16 messages 2012/02/08

[#42471] [ruby-trunk - Feature #5995][Open] calling io_advise_internal() in read_all() — Masaki Matsushita <glass.saga@...>

20 messages 2012/02/10

[#42560] [ruby-trunk - Bug #6011][Open] ruby-1.9.3-p0/lib/webrick/utils.rb:184: [BUG] Segmentation fault — Vit Ondruch <v.ondruch@...>

12 messages 2012/02/13

[#42579] [ruby-trunk - Bug #6012][Open] Proc#source_location also return the column — Roger Pack <rogerpack2005@...>

14 messages 2012/02/14

[#42685] [ruby-trunk - Bug #6036][Open] Test failures in Fedora Rawhide/17 — Bohuslav Kabrda <bkabrda@...>

14 messages 2012/02/16

[#42697] [ruby-trunk - Bug #6040][Open] Transcoding test failure: Big5 to UTF8 not defined (MinGW) — Luis Lavena <luislavena@...>

10 messages 2012/02/16

[#42813] [ruby-trunk - Feature #6065][Open] Allow Bignum marshalling/unmarshalling from C API — Martin Bosslet <Martin.Bosslet@...>

22 messages 2012/02/23

[#42815] [ruby-trunk - Bug #6066][Open] Fix "control may reach end of non-void function" warnings for clang — Eric Hodel <[email protected]>

15 messages 2012/02/23

[#42857] [ruby-trunk - Feature #6074][Open] Allow alias arguments to have a comma — Thomas Sawyer <transfire@...>

20 messages 2012/02/24

[#42891] [ruby-trunk - Feature #6083][Open] Hide a Bignum definition — Koichi Sasada <redmine@...>

23 messages 2012/02/25

[#42906] [ruby-trunk - Bug #6085][Open] Treatment of Wrong Number of Arguments — Marc-Andre Lafortune <ruby-core@...>

14 messages 2012/02/25

[#42949] [ruby-trunk - Bug #6089][Open] Test suite fails with OpenSSL 1.0.1 — Vit Ondruch <v.ondruch@...>

13 messages 2012/02/26

[ruby-core:42542] [ruby-trunk - Bug #6009][Assigned] Rapid signal delivery via kill(2) causes SystemStackError

From: Motohiro KOSAKI <kosaki.motohiro@...>
Date: 2012-02-13 12:54:40 UTC
List: ruby-core #42542
Issue #6009 has been updated by Motohiro KOSAKI.

Status changed from Open to Assigned
Assignee set to Motohiro KOSAKI


----------------------------------------
Bug #6009: Rapid signal delivery via kill(2) causes SystemStackError
https://bugs.ruby-lang.org/issues/6009

Author: Eric Hodel
Status: Assigned
Priority: Normal
Assignee: Motohiro KOSAKI
Category: core
Target version: 
ruby -v: ruby 2.0.0dev (2012-02-11 trunk 34547) [x86_64-darwin11.2.0]


=begin
Running the following program with a trivial signal handler can crash with a SystemStackError if signals are delivered rapidly:

  $ ruby -ve 'p Process.pid; trap "USR1" do 10 ** 100; end; sleep'
  ruby 2.0.0dev (2012-02-11 trunk 34547) [x86_64-darwin11.2.0]
  4504
  -e: SystemStackError

In a separate terminal:

  ruby -e 'loop do Process.kill "USR1", 4504 end'

As each signal is delivered, ruby interrupts the current signal handler to perform the newly arrived one and quickly runs out of stack.

With an empty system handler the SystemStackError takes slightly longer to occur.

This also occurs with 1.9.3-p0:

  $ ~/.multiruby/install/1.9.3-p0/bin/ruby -ve 'p Process.pid; trap "USR1" do 10 ** 100; end; sleep'
  ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0]
  4529
  -e: SystemStackError

and with ruby-1.9.2-p290:

  $ ~/.multiruby/install/1.9.2-p290/bin/ruby -ve 'p Process.pid; trap "USR1" do 10 ** 100; end; sleep'
  ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin11.2.0]
  4534

ruby-1.8.7-p330 exits with a zero exit code:

  $ ~/.multiruby/install/1.8.7-p330/bin/ruby -ve 'p Process.pid; trap "USR1" do 10 ** 100; end; sleep'
  ruby 1.8.7 (2010-12-23 patchlevel 330) [i686-darwin11.2.0]
  4564
  $ echo $?
  0

=end



-- 
http://bugs.ruby-lang.org/

In This Thread

Prev Next