[現象]
QEMUゲストで、Kernel Panicが発生します。表示例:
Kernel Panic - not syncing: Attempted to kill init!
が表示されます。
トレースに、
intel_pmu_init
などが表示されます。
intel_rapl
が表示される場合も、ほぼ同じ原因です。
表示の例など:
[SOLVED] Slackware 64bit 14.1 (RC) kernel 3.10.16 and VirtualBox
This time the GPU is with intel_pmu_init as opposed to intel_pstate_init on VBOX.
When qemu is invoked with either -cpu host or -cpu SandyBridge, the panic happens.
※SandyBridge以外(IvyBridgeなど)でも、同様の報告があります。
[原因]
QEMUが使用している Bochs BIOSのバージョンが低いために発生します。表示例: (dmesgなどで取得)
QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
※一部のディストリビューションでは、Standard PC・・・の部分を書き換えてあるようです。
これは、Bochs BIOSのバージョン2.4 以前を使用している場合の表示です。
バージョン2.4は、SandyBridgeのリリースより前のものです。
未実装の項目(SandyBridge以降の機能)にアクセスしたため発生する現象です。
※仮想環境で、本来は未対応のCPUを載せた場合などに発生します。
(440FX に、Xeon E5-2600ファミリー(SandyBridge)を載せた場合など)
参考:
Bochs News/History Bochsのバージョン履歴
February 22, 2011: Bochs 2.4.6Wiki - Xeon(Sandy Bridgeマイクロアーキテクチャ世代)
インテル Xeon プロセッサー E3系
2011年4月6日 (Xeon E3-1200) に発表された、エントリー向け Sandy Bridge となる。
インテル Xeon プロセッサー E5系
2012年3月から販売(E5-2600ファミリー)。E5-4600ファミリーおよびE5-2400ファミリーは2012年5月から販売。
他にも、未実装のMSR (model-specific register) に アクセスすると、
Kernel Panicが発生するという報告がありますが、
これも、同系統の問題と思われます。
Kernel Panic (kill initではなく、VFS) が発生した原因を、
パワーが上がらず、ハードディスクが回転していないのでは?
とする説もありますが、これの一部は、同じ原因で発生すると思います。
(パワーマネージメント周りの未実装項目にあたっていると予想します。)
※ Kernel Panic VFSの原因は、おそらく、udev(あるいはデバイスマッパ)が
デバイス(/dev/vdaなど)のメジャー番号を付け替える事だと思われます。
あくまで、「スピンアップしない」としたら、パワーマネージメント周りという推測です。
[対策]
Sandy Bridge以降の機能を使用しないようにします。(カーネルのリビルドが必要です。もしかしたら、ブートオプションでも回避可能かもしれません)
例:
Kernel Panic時のトレースなどに、intel_pmuが表示される場合
→ Intel P-state を使用しないようにします。(CONFIG_X86_INTEL_PSTATE=n)
Kernel Panic時のトレースなどに、intel_raplが表示される場合
→ CONFIG_INTEL_RAPL=nにします。
[補足]
Kernel Panic - not syncing: Attempted to kill init!は、
SELinuxが原因とする説もあります。(おそらく、トレースに現われる文字列が変わります。)
※selinux=0などのブートオプションを使用するには、カーネルのビルド時に有効にしておく必要があります。
disable関連の設定: CONFIG_SECURITY_SELINUX_BOOTPARAM
enforce関連の設定: CONFIG_SECURITY_SELINUX_DEVELOP
などの設定を確認して下さい。(ブート時、起動後それぞれの設定項目があります。)
intel_pmu_init、intel_raplなどが表示される場合は、本現象、
それ以外は他の問題という切り分けが必要かと思います。
0 件のコメント:
コメントを投稿