DN2820fykhには、CentOS7をインストールして利用していたが、先ごろkernelのアップデート以降起動しなくなった。
grub設定でカーネルパラメタをいじるか、BIOS設定をいじるかで解決!
なお、少なくともBIOS0048ではこの問題は解決しているようです。
(英語での概要)
— Abstract in English —
The problem seems to be fixed in BIOS 0048. If you have any problem booting CentOS7 with DN2820fykh, try update the BIOS and the Linux kernel!
Or otherwise, as written below in Japanese, you can change the BIOS configration “Advanced > Power > Intel Dynamic Power Technology” into Disable or Custom with “Intel Enhanced SpeedStep Technology” unchecked.
If you can change the bootloader settings, adding intel_pstate=disable to the kernel parameter will also work.
—-
起動していた状態
BIOS 0039 + kernel-3.10.0-123.8.2
起動しなくなった状態
BIOS 0039 + kernel-3.10.0-123.9.3
起動できるときでも、ehci-pciのエラーメッセージ(今回はおそらく関係ない)がたくさんでるので、BIOSの問題かと思ってBIOSのバージョンをあげてしまった。
これが失敗。(あとから考えると、BIOSのリリースノートをみると、0040で、Updated processor support というのがあるので、たぶんこれにあたったかと。)
BIOS 0041 にあげたところ、どちらのカーネルでも起動しなくなってしまった。
ググればいろいろ出てくるが、(というか日本語でそれっぽい解説をしているサイトがあったが、試しても起動しないし、何をやっているのか理解できなかった。インストールは苦労しなかったんだよな、、、。)
結局これ。 https://www.centos.org/forums/viewtopic.php?f=49&t=47301
カーネルパラメタに intel_pstate=disable を入れればOK、という話。試したらできたよ~。
で、intel_pstateってなんぞやということで調べると、以下っぽい。
https://www.kernel.org/doc/Documentation/cpu-freq/intel-pstate.txt
まぁ、詳しくはおいといて、SandyBridge以降のCPUで使えるようなもので、ターボブースト関連のドライバのようだ。(p-stateの状態を操作するファイルを、sysfsの下に作成するかどうか、ということのようだ、たぶん。)
で、これをdisableにすれば動くということだが、この辺を手で設定しておくのもなんだかあとで忘れそうだし、間違えてデグレしそうなので、BIOSで設定がないかと探したら、、、。
BIOS設定の
Advanced > Power > Intel Dynamic Power Technology をCustom(Intel Enhanced SpeedStep Technology のチェックをはずす)またはDisableに変更
で、上の設定をしなくても起動するようだ。CPUの電源まわりのつながりなのかしら。
結局まとめると、解決法は以下のうちどちらか
○intel_pstate=disable をgrub設定のカーネルパラメタに追加。
○BIOS設定の
Advanced > Power > Intel Dynamic Power Technology をCustom(Intel Enhanced SpeedStep Technology のチェックをはずす)またはDisableに変更