[#69616] [Ruby trunk - Feature #11258] add 'x' mode character for O_EXCL — cremno@...
Issue #11258 has been updated by cremno phobia.
3 messages
2015/06/16
[#69643] [Ruby trunk - Misc #11276] [RFC] compile.c: convert to use ccan/list — normalperson@...
Issue #11276 has been updated by Eric Wong.
3 messages
2015/06/17
[#69751] [Ruby trunk - Bug #11001] 2.2.1 Segmentation fault in reserve_stack() function. — kubo@...
Issue #11001 has been updated by Takehiro Kubo.
3 messages
2015/06/27
[ruby-core:69760] [Ruby trunk - Bug #11001] 2.2.1 Segmentation fault in reserve_stack() function.
From:
kubo@...
Date:
2015-06-28 05:26:51 UTC
List:
ruby-core #69760
Issue #11001 has been updated by Takehiro Kubo. > Any criteria where works on or not? > Runtime kernel versions? Segmentaion fault * Ubuntu 12.04 - kernel 3.2+ * Ubuntu 12.10 - kernel 3.5 * Debian 7.7 - kernel 3.2.63 * Debian 7.8 - kernel 3.4.105 No problem * Ubuntu 13.04 - kernel 3.8 * Ubuntu 14.04 - kernel 3.13 or 3.16 (I deleted the VM. I don't know which is used.) * Ubuntu 15.04 - kernel 3.19.3 * Debian 8.1 - kernel 3.16.7 Ubuntu https://en.wikipedia.org/wiki/List_of_Ubuntu_releases#Table_of_versions Debian 7.7 https://www.phoronix.com/scan.php?page=news_item&px=MTgxODY Debian 7.8 http://news.softpedia.com/news/Debian-7-8-Arrives-with-Security-Fixes-and-Updated-Linux-Kernel-469629.shtml Debian 8.1 http://news.softpedia.com/news/Debian-GNU-Linux-8-1-Jessie-Officially-Released-483592.shtml On Ubuntu 12.04, stack size in emacs shell buffer is 8515 and ruby gets segmentation fault. So I put 'ulimit -Ss 8192' in .bashrc for workaround. (stack size in gnome-terminal is 8192.) ---------------------------------------- Bug #11001: 2.2.1 Segmentation fault in reserve_stack() function. https://bugs.ruby-lang.org/issues/11001#change-53137 * Author: Kiyoka Nishiyama * Status: Feedback * Priority: Normal * Assignee: * ruby -v: ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] * Backport: 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: UNKNOWN ---------------------------------------- SEGV depends on stack limit size with 'ulimit -s <size>' . This shell script [ulimit_change_test.sh] can reproduce SEGV on my Debian environment. my Linux environment is Debian/GNU Linux 7.8. But, I cannot reproduce this SEGV on Amazon Linux environment. result on Debian 7.8 ~~~ $ /tmp/ulimit_change_test.sh 8515 /tmp/ulimit_change_test.sh: 3 行: 20470 Segmentation fault ./ruby --version 8514 /tmp/ulimit_change_test.sh: 3 行: 20471 Segmentation fault ./ruby --version 8513 /tmp/ulimit_change_test.sh: 3 行: 20472 Segmentation fault ./ruby --version 8512 ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] 8511 /tmp/ulimit_change_test.sh: 3 行: 20475 Segmentation fault ./ruby --version 8510 /tmp/ulimit_change_test.sh: 3 行: 20476 Segmentation fault ./ruby --version 8509 /tmp/ulimit_change_test.sh: 3 行: 20477 Segmentation fault ./ruby --version 8508 ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] 8507 /tmp/ulimit_change_test.sh: 3 行: 20480 Segmentation fault ./ruby --version 8506 /tmp/ulimit_change_test.sh: 3 行: 20481 Segmentation fault ./ruby --version 8505 /tmp/ulimit_change_test.sh: 3 行: 20482 Segmentation fault ./ruby --version 8504 ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] 8503 /tmp/ulimit_change_test.sh: 3 行: 20485 Segmentation fault ./ruby --version 8502 /tmp/ulimit_change_test.sh: 3 行: 20486 Segmentation fault ./ruby --version 8501 /tmp/ulimit_change_test.sh: 3 行: 20487 Segmentation fault ./ruby --version 8500 ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] 8499 /tmp/ulimit_change_test.sh: 3 行: 20490 Segmentation fault ./ruby --version 8498 /tmp/ulimit_change_test.sh: 3 行: 20491 Segmentation fault ./ruby --version 8497 /tmp/ulimit_change_test.sh: 3 行: 20492 Segmentation fault ./ruby --version 8496 ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] 8495 /tmp/ulimit_change_test.sh: 3 行: 20495 Segmentation fault ./ruby --version 8494 /tmp/ulimit_change_test.sh: 3 行: 20496 Segmentation fault ./ruby --version 8493 /tmp/ulimit_change_test.sh: 3 行: 20497 Segmentation fault ./ruby --version 8492 ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] 8491 /tmp/ulimit_change_test.sh: 3 行: 20500 Segmentation fault ./ruby --version 8490 /tmp/ulimit_change_test.sh: 3 行: 20501 Segmentation fault ./ruby --version 8489 /tmp/ulimit_change_test.sh: 3 行: 20502 Segmentation fault ./ruby --version $ ~~~ This SEGV occurs in `reserve_stack()` function. I suspect that the `buf[0x100]` size is too small for margin. I attached patch to fix it. ---Files-------------------------------- 0001-Bugfix-patch-of-reserve_stack-function.patch (720 Bytes) ulimit_change_test.sh (211 Bytes) -- https://bugs.ruby-lang.org/