Linux Kernel 2.4 Documentation:
/usr/src/linux/Documentation/nmi_watchdog.txt
nmi_watchdog.txt
NMI watchdog の使用方法
[プレインテキスト版]
- 原著作者: Ingo Molnar <mingo@redhat.com>
- 翻訳者: 野本浩一 <hng@ps.ksky.ne.jp>
- バージョン: 2.4.10
- 翻訳日時: 2002/01/17
あなたの ix86 システムは予期せずロックアップしますか?キーボード入力に
応答しない難しい完全なロックアップですか?このようなロックアップのデバッ
グ支援を受けたいですか?すべてが "yes" なら、これはきっとあなた向けの
資料です。
Intel および同様な ix86 タイプのハードウェアには、'watchdog NMI
interrupts' の生成を有効にする機能があります (NMI: Non Maskable
Interrupt、システムに他の原因で難しいロックアップが起きてもこれは実行
されます)。難しいカーネルロックアップのデバッグに利用できます。周期的
な NMI 割込みの実行により、カーネルは CPU のいずれかがロックアップした
かどうか監視でき、ロックアップしたならデバッグメッセージを出力します。
'nmi_watchdog=n' ブートパラメータでブート時に NMI watchdog を有効にす
ることが可能です。以下は適切な lilo.conf エントリの例です -
append="nmi_watchdog=1"
SMP マシンおよび IO-APIC のある UP マシンでは、nmi_watchdog=1 を用いま
す。IO-APIC のない UP マシンでは、nmi_watchdog=2 を用いますが、いくつ
かのプロセッサ種別でしか動作しません。動作しない場合、nmi_watchdog=1
でブートし、/proc/interrupts 内の NMI カウントを調べてください - カウ
ントが 0 なら、nmi_watchdog=2 で再起動 (reboot) し、NMI カウントを調べ
てください。それが 0 のままなら、不具合として記録します。たぶん使用し
ているプロセッサには nmi コードの追加が必要です。
ロックアップは次のシナリオです - システムの CPU のいずれかが周期的なロー
カルタイマー割込みを 5 秒以上実行しなければ、NMI ハンドラは oops を生
成しプロセスを終了 (kill) します。この controlled crash (およびカーネ
ルメッセージの結果) はロックアップのデバッグに利用できます。したがっ
て、ロックアップの発生時は常に、5 秒の待ちと、oops が自動的に発生しま
す。カーネルがメッセージを出力しない場合、システムはとても深刻にクラッ
シュし (例えば、ハードウェア障害)、NMI 割り込みの受入れさえできなくなっ
たか、クラッシュがカーネルのメッセージ出力をできなくしたかのいずれかで
す。
注記:2.4.2-ac18 からの NMI-oopser はデフォルトで無効になりますので、
ブート時のパラメータで有効にしなければなりません。2.4.2-ac18 以前の
NMI-oopser は x86 SMP ボックス上で無条件に有効になります。
[バグ報告、提案、パッチを気軽に Ingo Molnar <mingo@redhat.com> もしく
は Linux SMP メーリングリスト <linux-smp@vger.kernel.org> に送ってく
ださい。]
----------------------------------------------------------------------
日本語訳:野本浩一 <hng@ps.ksky.ne.jp>
Linux カーネル 2.4 付属文書一覧へ戻る