ソフトウェア

Firefoxがハングアップして停止するときに原因を突き止めるための手順まとめ


PCでアプリケーションを動かしている時に、何らかの理由でアプリケーションの動作が突然止まってしまい、再起動したことがあるという人は多いはず。Mozillaが開発するウェブブラウザではクラッシュ時に「クラッシュレポーター」が起動してレポート時の状況を伝えることができますが、状況によってはそれすらも起動しないこともあります。そんな時に原因を突き止めてFirefoxの開発陣に報告する方法を、Firefoxの開発者がソーシャルニュースサイトのHacker Newsで解説しています。

Since upgrading to 118 I've had random hangs of firefox every few days. Not clea... | Hacker News
https://news.ycombinator.com/item?id=38087817


Hacker Newsユーザーのta1243氏によると、バージョン118にアップグレードしてから、Firefoxが数日おきに不定期にハングアップするようになったとのこと。ハングアップが起こると、すべてのウィンドウがフリーズしてしまうため、「killall firefox」とコマンドを打つことで強制終了させなければならないそうです。ta1243氏は、この現象についてインターネットで検索しても検索エンジンがまともに機能していないために関連する情報を見つけることができない、と述べています。


このta1243氏の書き込みに対し、Mozillaのメディア開発者でFirefoxの開発にも携わるpadenot氏が診断方法を紹介しています。

まず、Linux環境でFirefoxが完全にフリーズしてしまっている場合、おそらく親プロセスに問題があるとpadenot氏は指摘しています。この親プロセスとはFirefoxのタブを管理するプロセスのことで、クラッシュレポートが有効になっている場合、SIGABRTで親プロセスを強制終了すると、「about:crashes」にエントリが作成され、再起動後にそのエントリを検索して送信することができるとのこと。


また、GDBdebuginfodを含むディストリビューションを使っている場合、GDBをFirefoxの親プロセスにアタッチしてシンボルをダウンロードし、その上で「thread all apply bt」を実行すると、親プロセスのすべてのスレッドのスタックがダンプされるとのこと。

クラッシュに関する情報が得られたら、使用しているディストリビューションのバグトラッカーにチケットを作成するか、Mozillaが公開しているウェブベースのバグ管理システム・Bugzillaにログインし、状態とFirefoxのバージョン、クラッシュレポート、「about:support」で表示されるトラブルシューティング情報などの情報を添付し、Firefox開発陣に直接連絡すればOKだとのこと。


padenot氏は「LinuxでFirefoxがフリーズするケースは、Firefoxとデスクトップ環境の間のバグやグラフィックドライバーのバグによって引き起こされ、スタックによって問題を大きく絞り込むことが可能です」と述べています。

この記事のタイトルとURLをコピーする

・関連記事
「Firefox 119」正式版リリース、開いているタブ・最近閉じたタブ・他の端末のタブを一覧できる画面「Firefox View」が追加される - GIGAZINE

Firefoxにプライバシーを保護しつつブラウザ使用状況を集めるシステム「Oblivious HTTP(OHTTP)」と「Distributed Aggregation Protocol(DAP)」が導入される予定 - GIGAZINE

Firefoxが「レビューチェッカー」のデフォルト搭載を予定していることが明らかに - GIGAZINE

「Firefox 118」正式版リリース、ローカルで動作する翻訳機能が搭載される - GIGAZINE

98%の人が「デフォルトブラウザは自分で決めたい」と考えていると回答 - GIGAZINE

司法省対Google訴訟を担当した裁判官が「Firefoxがウェブブラウザなのか検索エンジンなのか」さえ知らなかったとの指摘 - GIGAZINE

in ソフトウェア, Posted by log1i_yk

You can read the machine translated English article here.