[前][次][番号順一覧][スレッド一覧]

ruby-changes:35903

From: nobu <ko1@a...>
Date: Thu, 16 Oct 2014 23:17:49 +0900 (JST)
Subject: [ruby-changes:35903] nobu:r47984 (trunk): signal.c: get rid of heap corruption

nobu	2014-10-16 23:17:34 +0900 (Thu, 16 Oct 2014)

  New Revision: 47984

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=47984

  Log:
    signal.c: get rid of heap corruption
    
    * signal.c (rb_sigaltstack_size): double default size to get rid
      of heap corruption by alternate stack overflow in SEGV handler.
      typically happened at fprintf() in control_frame_dump().

  Modified files:
    trunk/ChangeLog
    trunk/signal.c
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 47983)
+++ ChangeLog	(revision 47984)
@@ -1,3 +1,9 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1
+Thu Oct 16 23:17:40 2014  Nobuyoshi Nakada  <nobu@r...>
+
+	* signal.c (rb_sigaltstack_size): double default size to get rid
+	  of heap corruption by alternate stack overflow in SEGV handler.
+	  typically happened at fprintf() in control_frame_dump().
+
 Thu Oct 16 22:43:12 2014  Tanaka Akira  <akr@f...>
 
 	* vm_backtrace.c (id2str): Fix a variable name.
Index: signal.c
===================================================================
--- signal.c	(revision 47983)
+++ signal.c	(revision 47984)
@@ -535,7 +535,7 @@ int https://github.com/ruby/ruby/blob/trunk/signal.c#L535
 rb_sigaltstack_size(void)
 {
     /* XXX: BSD_vfprintf() uses >1500KiB stack and x86-64 need >5KiB stack. */
-    int size = 8192;
+    int size = 16*1024;
 
 #ifdef MINSIGSTKSZ
     if (size < MINSIGSTKSZ)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]