/proc/cpuinfoの「バグ」セクションに実際に何が表示されますか?

/proc/cpuinfoの「バグ」セクションに実際に何が表示されますか?

現在、カーネルとマイクロコードがインストールされているDebian Stretchおよびテスト/バスターシステムでは、まだMeltdownとSpectreがあります/proc/cpuinfo

ただし、実行中のspectre-meltdown-checkerディスプレイは脆弱ではありません。

/proc/cpuinfoだから何が表示されるのか知りたいです。これはこのCPUのバグですか?システムパッチにもかかわらず、これらの脆弱性は常にリストされていますか?

ベストアンサー1

/proc/cpuinfo「バグ」フィールドの意図は、コミットメッセージで説明されています。紹介した:

x86/cpufeature:エラー表示を追加/proc/cpuinfo

機能フラグと同様に、私たちが実行しているCPUにエラー解決を検出および/または適用したことを示すダンプフラグがあります。

利点は、これらの機能がCPU機能のように時間が経過しても蓄積されないことです。

以前は、カーネルが検出したハードウェア障害が次のようにリストされていました。別の機能例えば32ビットx86システムに独自のエントリがある悪名高いF00Fエラーですf00f_bug/proc/cpuinfo「バグ」エントリは、これらの問題を次のスタイルで単一の機能に維持するために導入されました。x86 CPUフラグ

実際、これらの項目が意味するのは、メッセージに見られるようにカーネルが保証されるということです。検出済みハードウェアエラーです。問題が解決したかどうかを確認するには、他の場所(開始メッセージ、特定の項目、/procまたは/sysファイルなど)を調べる必要があります。/sys/devices/system/cpu/vulnerabilities/

「バグ」エントリの有用性は2つの点で制限されています。まず、実際の負数と未知数を区別する方法はありません。このフィールドが "cpu_meltdown" を指定しない場合、カーネルが Meltdown を認識しないことを意味するか、このフィールドだけでは不明です。 CPUはメルトダウンの影響を受けません。 2つ目は、検出が過度に単純であることです。注意を払うのにエラーがあり、そうでなくてもCPUが脆弱であると報告できます。 「検出」はテーブルベースなので、精度は実行しているカーネルのバージョンによって異なります。

MeltdownおよびSpectreエラーの場合、検出プロセスは次の値を提供します。/proc/cpuinfo 動作原理は次のとおりです、x86から​​:

  • CPUの場合推測なし(レベル486、いくつかのペンティアムレベル、いくつかのアトム)、メルトダウンやスペクターの影響を受けるとマークされていません。
  • 残りのすべてのCPUは、マイクロコードバージョンなどに関係なく、Spectreバリアント1および2の影響を受けるとマークされています。
  • CPUの場合投機的店舗バイパスにあまり脆弱ではないと分類されていない、対応するマイクロコードがSSB緩和として宣言されておらず、CPUがSSB緩和として宣言されていない場合は、SSBの影響を受けたとマークされます。
  • CPUの場合メルトダウンに脆弱ではないと分類されていません(AMD)マイクロコードがMeltdownを軽減すると主張しない場合、Meltdownの影響を受けたとマークされます。

おすすめ記事