パスワードを忘れた? アカウント作成
16452 story

GCC 4.0.2 のバグ、Linus の野望を暴く 88

ストーリー by kazekiri
斜めに見よう 部門より

tamo 曰く、

Linux カーネルが Oops と言ったら、まず何を疑うべきだろうか。 Ingo Molnar が procfs まわりで遭遇した問題は、Linus Torvalds の解析により コンパイラのバグであると判明した。 Linus は、原因となった GCC 4.0.2 の最適化バグを「違法行為 (Illegal)」と呼び、 「そんなコンパイラは役立たずのゴミだ」と言い切っている。 Alan Cox に「コンパイラの最適化に関する禁止令なんて存在しないんだから、違法とか言うなよ」と指摘された彼は、 「ああ、俺が世界の支配者になるとき違法になるんだった。ちょっと先走りしすぎたね」と返し、 「支配者になるのは、いつ頃?」という問いに「鋭意奮闘中。なかなか簡単じゃないんだなこれが」と答えている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • でも、自分が主催(or それに近い)とはいえ、公の場でこんなセリフが言えるくらいの度胸やユーモア(Linusはマジかもしれんが)が欲しい所ではあります。

    # ありません? 顔色を伺ってるつもりはなくても、進捗会議とかでつい色良い返事を返しちゃうこと

    Go Other WayなのでID
    --
    M-FalconSky (暑いか寒い)
  •  プログラマーはマシン語を理解しておくべき? [srad.jp]に対する返歌が意外に早く出てきた?
  • GCC 4.2.2も出た [gnu.org]みたいだけど、なんでLinusたちは4.0.2なんか使っているんですかね。
    ロバストだから?

    ああだこうだデバッグしていて最後の最後に不具合の原因がコンパイラのバグであることがわかると、
    コンパイラを呪いたくなるよね。無保証のフリーソフトウエアだし無料で使っているのにね。さいきん
    ぼくはgfortranのconjg(transpose(z(:,:))のバグ [gnu.org]にハマりました。量子力学方面では
    かなりヤバいバグなんですが、人的資源の問題から4.2.xでは直さないと言っていたような、直すこと
    になったような。gfortranをゴリゴリ使いたいならリポジトリのHEAD(4.3.0になる予定のやつ)を使え、
    ってことみたいです。たしかに4.2.xだとInternal Compiler Error (ICE)になっちゃうバグも直ってて
    よいかんじです。

    って、gfortranを使っている人、います?
    --
    love && peace && free_software
    t-nissie
    • by kr (10950) on 2007年10月11日 1時20分 (#1232126) 日記

      タレコミ分のリンク先 [kerneltrap.org]に書いてありますが、 GCC 4.0.2を使っていたのは、クラッシュレポートを送ってきたIngo Molnar氏です。Linusは自分のGCC 4.1.2は同じソースから正しいコードを吐くと書いてます。

      話の流れはこんな感じ……

      Ingo Molnar: procfsがクラッシュする! 再現方法はかくかくしかじか、gdb出力とConfigは〜
      Linus Torvalds: バグったコンパイラ使ってるな。8b 3aなんて間違ったバイナリを吐いてるのが原因。君のコンパイラがlegalな最適化をしてるかどうかに疑いの余地は無い。間違ってる。
      Ingo Molnar:4.0.2だぜ? 最新ってわけじゃないが、もう2年も使ってて、今までコンパイルミスなんか無かったぞ。それより問題はたぶんconfigで……
      Linus Torvals:確かだって。逆アセンブリしてどこが悪いか指摘できるよ。(アセンブリコードを交え懇切丁寧な解説が続く)
      Ingo Molnar:う、分かった……コンパイラ変えて試してみる……。
      約20分後
      Ingo Molnar:GCC 4.1.2で試したらクラッシュしなくなった。君が正しい。4.0.2のバグだった(使ったのはディストロ版でなく俺が自分でビルドした奴だけど)。他のconfigでも試したけど、当然ながらクラッシュしなかったよ……
      Alan Cox:おっほん。ところでLinusや、legal(合法)でなくvalid(妥当)と言うべきであるぞよ。まだコンパイラ法ってのはないからのぉ。すまん、しかし、printkとかdocの間違った"illegal"を延々と直すのはうんざりなんじゃよ。
      Linus Torvals:ヘッ! 僕が大宇宙の支配者になったら、違法(illegal)にするよ! ちょっと先走っただけさ。
      Jan Engelhardt:で、いつなるの?
      Linus Torvals:頑張ってるよ。頑張ってるさ。でも、君もそうだと思うけど、なかなかうまくはいかないもんでさ。それほど簡単じゃないみたいなんだな。

      言葉遣いとジョーク部分はともかく、最初のレポートから数時間で的確に問題の所在を突き止め、察しの悪い相手にも懇切丁寧な解説まで書いちゃうLinus氏はやはりたいした人物なのだなあと知りました。私はもっぱら*BSDのユーザだけど、Linux党員が「優しい独裁者」を称える理由がちょっと分かった気がしました。:-)

      親コメント
    • gfortran とどのくらい違うのかわからないけど g95 だとどうなりますかね。
      計算結果で納得いかないときは複数のコンパイラで結果を比較するという方法で調べることがあります。
      Sun Studio 11 にも Fortran コンパイラありますよ。
      親コメント
      • 今日現在、
        g95はFortran 95/2003の機能はかなり実装が進んでいるけど、OpenMPが使えない。
        gfortranはFortran 95/2003の機能の実装が少し遅れてるけど、OpenMPが使える。
        とぼくは理解しています。

        おっしゃるとおり、いろいろなコンパイラやいろいろなアーキテクチャ(32bit/64bit、
        Intel系/PowerPCなど)のCPUで自分のプログラムをコンパイルするとバグを見つけやす
        いです。でもさいきんはIntel系のCPUばかりになってしまって、浮動小数点数をIEEE????
        (何番だったかな)準拠で扱ってくれるのが少なくなってます。まあ、IEEE????より
        Intel系のCPUのほうが精度はよいんですが。でもちょっと変。

        --
        love && peace && free_software
        t-nissie
        親コメント
  • 鋭意奮闘中・・・ (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2007年10月10日 21時10分 (#1231978)
    実行支配力ではGatesに大幅に負けてるし、
    違法誘導力もStallmanに大幅に負けてる。
    確かに困難な道のりだ。
  • 俺は新世界の神になる (スコア:2, おもしろおかしい)

    by yukichi (12361) on 2007年10月10日 22時05分 (#1232019) ホームページ
    リューク→stallman
    デスノート→gcc

    # そういえば、彼の名前もLだ
  • by Anonymous Coward on 2007年10月10日 21時25分 (#1231987)
    T/O
  • ただのジョークだろ? (スコア:1, おもしろおかしい)

    by Anonymous Coward on 2007年10月10日 21時55分 (#1232012)
    このタレこみに何の意図があるのかが理解できないなー。

    まぁLinusが俺と同じ野望を持っているって事だけは理解した。
  • by Anonymous Coward on 2007年10月11日 0時21分 (#1232098)
    あるいはOSのせいとかね。本当にコンパイラやOSのバグを見つけることなんて滅多にないのに。
    いや、もちろん Linus のことでなく、私の周りの人々。
  • むぅ、後発が現れたか。
    --
    fjの教祖様
  • コンパイラがバイトアクセスに展開するのを当てにせずに、そこだけアセンブラにするのじゃ駄目なのかなぁ?
  • by Anonymous Coward on 2007年10月10日 21時23分 (#1231984)
    Alan Cox も最初から「the standard is not ambiguous here」と、コンパイラのバグであることに同意しているのに、なんでそこを省略して、さもやフレームが発生しているみたいに見せかけるんですかね。

    それともそれがスラドクオリティ?
    • by foobar2006 (30156) on 2007年10月10日 22時35分 (#1232044) 日記
      もしかして火の無いところに煙を見る人?
      短絡と狭量こそがフレームの大元ですよ。

      # しかし、ニヤリとする笑い話の紹介だが、オチまで付いてるので
      # これ以上どう議論しろと? という困ったタレコミではあるな。
      親コメント
    • by Anonymous Coward on 2007年10月10日 21時53分 (#1232008)
      フレームが発生しているようには読めなかったけど(むしろ楽しんでるんじゃないかと)。
      #一連のやり取りを面白いと思うのがスラドクオリティではあると思う。
      親コメント
    • by Anonymous Coward on 2007年10月10日 23時22分 (#1232065)
      スラドクオリティって言いたいだけなんじゃないかと。

      // ま、最近ACに日本語の読み書きが不自由なのが増えてるのは確かだな。
      // ・・・まさか全部同一人物じゃないだろーな。
      親コメント
      • // ・・・まさか全部同一人物じゃないだろーな。
        そういう疑念を晴らすには、なんと言ってもID投稿がオススメです。
        親コメント
      • by Anonymous Coward on 2007年10月11日 11時42分 (#1232267)
        >まさか全部同一人物じゃないだろーな。

        俺のくせに何言ってんだよ。
        親コメント
  • by Anonymous Coward on 2007年10月10日 21時27分 (#1231990)
    こういうちょっと子供っぽいユーモアが彼の魅力だと思う
typodupeerror

私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson

読み込み中...