Firefox 151.0.1がRaptor Lakeクラッシュを修正、調査開始から1年
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が誤った値をソフトウェアに渡すという性格の欠陥で、受け取る側のアプリケーションにできることは何もない。
| RPL050 | RPL060 | |
|---|---|---|
| 分類 | キャッシュ コヒーレンシ欠陥 |
メモリ読み出し 欠陥 |
| 発生 条件 |
別コアが書き込んだ データを参照 するとき |
キャッシュラインを またぐ読み出し (split-load)時 |
| 現象 | 最新の書き込みが 見えず、古い値 が返る |
誤ったデータが 返る |
| Firefoxへの 影響 |
zlib-rs 圧縮処理の 16-bit 値が化け、境界外アクセスでクラッシュ | |
| SW側で 防げるか |
防げない — CPUが渡す値が誤っているため、受け取る側での対処は不可能 | |
| 対処 | マイクロコード 0x12cで 頻度を低減 |
マイクロコード 0x12cで 頻度を低減 |
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について」から手動で確認するか、自動アップデートで適用される。
|
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は、自分たちができる対処を完了させた。
参照元
関連記事
- Firefox 150.0.1配信、Relay無料枠が10倍に
- FirefoxにVulkan Videoが来る、NVIDIA問題の構造が変わる
- Firefox 151.0.2公開、分割ビューの不具合など10件を修正
- Firefox 150、Mythosで脆弱性271件を修正
- Firefox 150配信、分割ビューとPDF編集が本格化
- Firefox 149 vs Chrome 147、Linuxベンチマーク対決の勝者と敗者
- Firefox 149.0.2公開、5件の高深刻度脆弱性を修正
- SteamでWindows 11シェアが約70%に到達、それでも残る24%の行方
- Brave Origin正式リリース、「機能を削って有料」の是非
- SSDの振動から閲覧サイトを推定する手法 研究者が実証