Ottawa Linux Symposium 4日目リポート(3/5 ページ)

» 2005年07月29日 01時48分 公開
[David-'cdlu'-Graham,japan.linux.com]

バグ報告者のバグ

 今年の基調講演に登壇するのは、Red HatでカーネルとAGPドライバを担当するデイブ・ジョーンズ(Dave Jones)氏だ。そのジョーンズ氏を紹介するのは、OLSの長い伝統に従って、昨年、基調講演を行ったアンドリュー・モートン(Andrew Morton)氏である。

 ジョーンズ氏の基調講演の標題は、「より良いバグ報告とテストとツールを」。

 モートン氏の陽気な紹介は、Red Hatには世界に誇れる技術者が沢山いるのに、さらにデイブ・ジョーンズ氏を雇ったという話で始まった。

 ジョーンズ氏は1996年にカーネル開発チームに加わり、現在はカーネル・ソース・ツリーのAGPドライバの面倒を見ている。また、Red Hatカーネルを担当する中心的人物でもある。Red Hat Linuxが市場に占める割合は50%前後ないしはそれを超えるが、それがジョーンズ氏をしてカーネル・コミュニティーにおける重鎮たらしめている。

 カーネル2.5の開発ツリーが始まったときのことだ。ジョーンズ氏はカーネル2.4から多くのバグ改修を取り込む作業を買って出た。しかし、そのパッチをいざ組み込もうとしたとき、それはもはや無用の長物となっていた。準備ができたときには、カーネル2.5のソース・ツリーは大きく変更されており、パッチをカーネル・ソース・コードに適用できなくなっていたのだ。

 また、最近、大きな危機に見舞われたが、Red Hat経営陣の卓越した指導力により、電子メールの「最も暗い時」を切り抜けることができた。ここで、モートン氏は、Linuxカーネル・メーリングリストへの投稿を読み上げた。それは、ジョーンズ氏をRed Hatから追い出そうという脅迫状だった。

 モートン氏に紹介されたジョーンズ氏は、冒頭、昨年のOLSで基調講演を引き受けたとき(ジョーンズ氏は参加者全員の前で指名されたのだった)、何について話すかまったく思いつかなかったと述べた。しかし、マサチューセッツ州ウェストフォードに着いたときテーマを思いついたと言う。そして、1枚の写真をプロジェクタに載せた。写真には氷河が写り、遠くに人が見える。表題は「マサチューセッツ州ウェストフォード」。そこは、ジョーンズ氏がRed Hatのbugzillaバグ追跡システムで働き始めた場所である。

 次いで、一番のお気に入りの話を披露した。

 「君は、コンピュータ産業には向かないね」――15年前、わたしは計算機科学の先生にこう言われました。

 そして、カーネル2.6.0から2.6.7まではほぼ毎月新バージョンがリリースされていたが、2.6.7以降3か月に1回にペースが落ちたことを指摘し、開発サイクルをもっと早める必要があると述べた。

 ここで、ジョーンズ氏は本題に入った。カーネルをアップグレードするとドライバが壊れることがよくあるが、それは十分なテストが行われていないためであると述べ、代表的事例として、カーネル2.6.11におけるALSAサウンド・ドライバの機能不全を挙げた。しかし、リリースごとにすべてのドライバをすべての条件でテストするのは困難だろうとジョーンズ氏は言う。AGPドライバだけでも50種ものチップセットをサポートしており、ちょっとした変更が問題を引き起こし、カーネルがリリースされるまで見つからない可能性があるというのである。

 各部門の担当者がすべてのパッチを丹念に読む時間がないため、パッチによっては十分なレビューを経ずにカーネルに適用されると、ジョーンズ氏は告白した。

 リリースの際、ストレス・テスト、ファズ・テスト、パフォーマンス・テストは実施されるが、縮退テスト、エラー・パス・テスト、コード・カバレージ・テストは、リリースごとに行われているわけではない。

 さらに、カーネル開発のリリース候補段階で見つけられるはずの多くのバグが発見できていない。それは、カーネルがプレリリースされても、ほとんどのユーザーは使わず、見せかけだけの安定版カーネルを待つからである。そして、多くの人がテスト・リリースを使っていたらもっと早く見つかったであろうバグを報告することになる。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ