yarv-dev:1103
From: Tadashi Saito <shiba mail2.accsnet.ne.jp>
Date: Thu, 9 Nov 2006 19:32:57 +0900
Subject: [yarv-dev:1103] Re: segv when stack level is too deep
こんばんは、斎藤です。遅れました。 On Sat, 04 Nov 2006 12:42:35 +0900 SASADA Koichi <ko1 atdot.net> wrote: > ささだです。 > 見落としていました。すみません。 いやいや、とりあえず報告させていただいた、というだけなので。 誰もこんなプログラム書かないと思いますし :) > これは、eval の無限ループになるのでスタックトレースが長くなるのはそう > いうものですね。で、SEGV してしまうのは、スタックオーバーフローを十分に > 検出できていないからです。スタックオーバーフローの検出は限界があるので、 > この問題を確実に解決するのはむずかしそうです。 なるほど、現行VMだとSEGVしないのがちょっと悔しいですが、了解 しました。もっと現実的な他の問題を引き起こす方が心配でしたが、 程度の問題ということなのでしょうね。アーキテクチャ依存部もある ようですし。 …と思って[powerpc-darwin8.8.0]という環境で試したら、以下のように $ date; ruby-yarv -v evalself.rb; date Thu Nov 9 18:54:35 JST 2006 ruby 1.9.0 (Base: Ruby 1.9.0 2006-11-06) [powerpc-darwin8.8.0] YARVCore 0.4.1 Rev: 578 (2006-11-09) [opts: [direct threaded code] [inline method cache] ] Killed # by other term Thu Nov 9 19:17:59 JST 2006 と少なくとも20分は落ちませんでした。いずれにせよ対応を急ぐような 問題ではない(暗黒面?)と思うので、あまりお気になさらないでください。 では。 -- 斎藤ただし -- ML: yarv-dev quickml.atdot.net Info: http://www.atdot.net/~ko1/quickml
1095 2006-10-25 00:15 [shiba mail2.accsnet.] segv when stack level is too deep 1096 2006-10-25 00:30 ┣[shiba mail2.accsnet.] 1098 2006-11-04 12:42 ┗[ko1 atdot.net ] 1099 2006-11-04 17:45 ┣[shudo computer.org ] 1100 2006-11-04 17:53 ┃┗[ko1 atdot.net ] 1101 2006-11-04 20:34 ┃ ┗[shudo computer.org ] 1102 2006-11-04 20:49 ┃ ┗[ko1 atdot.net ] -> 1103 2006-11-09 19:32 ┗[shiba mail2.accsnet.]