Firefox 151.0.1がRaptor Lakeクラッシュを修正、調査開始から1年

Firefox 151.0.1がRaptor Lakeクラッシュを修正、調査開始から1年
Intel

Intel 第13・14世代CPU搭載デスクトップを1年間苦しめてきたFirefoxのクラッシュ問題が、ついに修正された。CPU内部のバグがブラウザを落としていたという、珍しい構図の幕引きだ。


Intel CPUのバグが「Firefoxのバグ」に見えていた

Firefox 151.0.1が2026年5月21日にリリースされ、Intel Raptor Lake CPUを搭載するシステム、とりわけデスクトップPCで発生していたクラッシュが修正された。

調査の端緒は、Firefox Nightly ビルドで最初のクラッシュが観測されてから約1年前にさかのぼる。Mozillaのエンジニアたちはクラッシュの原因を zlib-rs(Rustで実装された圧縮ライブラリ)の処理ルーティン内に絞り込んだ。具体的には16ビットの dist 値が本来と異なる値を示し、配列への境界外アクセスが発生してクラッシュに至っていた。

しかしそれは、zlib-rsのコード自体に誤りがあったのではない。

CPUバグ「RPL050/RPL060」が根本原因

Mozillaのエンジニアが突き止めた根本原因は、Intel Raptor Lakeに固有のCPUバグ、RPL050とRPL060だった。

RPL050は「あるコアが別のコアに書き込んだデータを正しく参照できない」という問題、RPL060は「キャッシュラインをまたぐメモリ読み出し(split-load)で誤ったデータが返される」という問題だ。どちらも、CPUが誤った値をソフトウェアに渡すという性格の欠陥で、受け取る側のアプリケーションにできることは何もない。

Raptor Lake CPU固有バグの比較
RPL050 RPL060
分類 キャッシュ
コヒーレンシ欠陥
メモリ読み出し
欠陥
発生
条件
別コアが書き込んだ
データを参照
するとき
キャッシュラインを
またぐ読み出し
(split-load)時
現象 最新の書き込みが
見えず、古い値
が返る
誤ったデータが
返る
Firefoxへの
影響
zlib-rs 圧縮処理の 16-bit 値が化け、境界外アクセスでクラッシュ
SW側で
防げるか
防げない — CPUが渡す値が誤っているため、受け取る側での対処は不可能
対処 マイクロコード
0x12cで
頻度を低減
マイクロコード
0x12cで
頻度を低減
※ Intel公式エラッタ文書に基づく。Firefox 151.0.1はCPUバグそのものではなく、クラッシュに至るzlib-rsの処理パスを回避する実装を加えることで対処した。

Mozillaのシニアスタッフエンジニアであるガブリエレ・スヴェルト(Gabriele Svelto)氏は、この問題についてIntelに複数回問い合わせたものの、返答は得られなかった。

Raptor Lakeシステムには既知のタイミング・電圧の問題があり、温度が上がるとさらに悪化する。状況があまりにも深刻だったため、私たちはクラッシュレポートを自動収集するボットを無効にしなければならなかった。ボットが検知するクラッシュのほぼすべてが、影響を受けたシステムから来ていたからだ。

スヴェルト氏が2025年7月に残したこの言葉は、問題の規模を端的に示している。クラッシュの数があまりに多く、監視システムが事実上機能不全に陥っていた。

0x12cマイクロコードで「減少」、しかし消えてはいなかった

Intelは2025年2月、マイクロコード0x12cをリリースした。RPL050とRPL060を対処する内容で、Firefoxのクラッシュ報告件数はこのマイクロコードを適用しているユーザーで大幅に減少している。

マイクロコード0x12c適用済みのユーザーではクラッシュが確認できていないが、このバージョンがWindowsとLinux双方のユーザーに広く届くまでには時間がかかる。

ただし、マイクロコードが行うのはあくまでも発現頻度の抑制だ。バグによって引き起こされるクラッシュパスをFirefox自身が回避することが、今回のFirefox 151.0.1での対処になる。

Firefoxが自らCPUのバグを踏まないよう実装を変えた——という言い方が、現状に最も近い。

欧州の熱波がFirefoxのクラッシュマップになっていた

この問題がソフトウェアの欠陥ではないことを示す、奇妙なデータがある。

スヴェルト氏はクラッシュレポートのロケール情報を分析することで、どの欧州諸国が熱波に見舞われているかを特定できた、と述べている。気温が上がるとクラッシュが増える。つまりFirefoxのバグ収集システムが、熱波の地図として機能していた。

これは笑い話として流せる話ではない。ハードウェアの欠陥がソフトウェアのバグとして観測される構造を、Mozillaは1年間追い続けた。クラッシュの原因がCPUのシリコンにある場合、ブラウザ開発チームに打てる手は限られる。

北半球のRaptor Lakeユーザーは夏の熱波でPCがクラッシュしやすくなっている。欧州の各国が熱波にさらされているかどうかを、Raptor Lakeシステムから届くFirefoxクラッシュレポートのロケール分布で文字通り確認できる。

変更点と適用対象

Firefox 151.0.1のリリースノートに記載された修正は2件。

Intel Raptor Lake CPU搭載システムでのクラッシュ修正(Bug 1950764)と、WindowsでWebSerialを使用して特定のウェブサイトがデバイスのファームウェアを書き込む際に失敗する可能性がある問題の修正(Bug 2040754)だ。

対象は主にデスクトップシステム。Intel第13世代(Raptor Lake)および第14世代(Raptor Lake Refresh)のCore iシリーズが搭載されているPCで、マイクロコードの更新がまだ届いていないシステムでも、今回のアップデートによってクラッシュが減る見込みだ。

Firefoxのアップデートは「Firefoxについて」から手動で確認するか、自動アップデートで適用される。

Raptor Lake クラッシュ問題:経緯と決着
2025年
初頭
発端 Firefox Nightly でクラッシュ観測開始 zlib-rs の圧縮処理で境界外アクセスが頻発。調査を開始するが、原因はコードにない。
2025年
2月
Intel 対応 マイクロコード 0x12c リリース RPL050 / RPL060 に対処。適用済みユーザーのクラッシュ報告が大幅に減少した。Mozilla は Intelへ複数回問い合わせたが返答はなかった。
2025年
7月
可視化 熱波とクラッシュの相関が明らかに Mozilla のシニアスタッフエンジニア、ガブリエレ・スヴェルト氏がクラッシュレポートのロケール分布から欧州の熱波を特定できると報告。ボットを無効化するほど報告が集中した。
2026年
5月21日
解決 Firefox 151.0.1 リリース Mozilla がブラウザ側でクラッシュパスを回避する実装を追加(Bug 1950764)。マイクロコード未適用の環境でもクラッシュが減る見込み。

Intel Raptor Lake問題は、未修正のCPUがまだ多数稼働している以上、完全に過去の話ではない。しかし少なくともFirefoxは、自分たちができる対処を完了させた。


参照元

関連記事

この記事を共有する