Linuxカーネル4.15リリース、Meltdown/Spectreへの対処が組み込まれる

 Linus Torvalds氏は1月28日、「Linuxカーネル4.15」のリリースを発表した。年始に明らかになったCPUの脆弱性Meltdown及びSpectreへの対応が中心だが、通常通りの機能強化も多数行われている。

 Linuxカーネル4.15は、11月中旬に公開されたカーネル4.14に続くリリースとなる。Torvalds氏はリリースを告げるメーリングリストへの投稿で「今回のリリースサイクルは楽しいものではなかった。Meltdown/Spectreの騒動がサイクル中に突如現れ、我々の通常のリリースサイクルを壊された」としてMeltdown/Spectreへの不快感を露わにしている。

 4.15ではMeltdown/Spectre対応として、x86向けにPage Table Isolation、PowerPC向けにRFI flush of L1-D cacheが導入された。また、CPUに影響のある脆弱性を表示するためのディレクトリ/sys/devices/system/cpu/vulnerabilities/も加わった。

 Torvalds氏は一方で、Meltdown/Spectreへの対応は「完了」ではないとし、armやspectre-v1などのアーキテクチャで作業が残っているとしている。なお、間接的なブランチの対策にはカーネルのアップデートだけではなく、Retpoline(Googleがリリースした緩和策)をサポートするコンパイラが必要と忠告している。

 IntelのUser Mode Instruction Preventionもサポートした。有効にすると一部の命令セット(SGDT、SLDT、SIDT、SMSW、STRなど)がユーザーモードで実行されるのを無効にするという。カーネル2.6.24でマージされて4.5で安定扱いとなったcgroup v2で、CPUの使用制限を改善するコントローラーが加わった。4.14でマージしたスレッドモードを土台とすることで実現した。

 SATAのAHCIコントローラーのALPM(⁠Aggressive Link Power Management)の不具合を改善した。以前からあった問題だが、ドキュメンテーションがないなどの理由で改善が難しかったという。今回パッチがマージされたことで、デフォルトでのALPMの行動が改善され、バッテリー持続時間の改善につながるとしている。

 RISC-Vアーキテクチャを新しくサポートした。4.15では主要なポーティングが含まれているが、引き続き作業中という。

 AMDのGPUドライバーamdgpuの対応を強化し、display codeが加わった。DCE8(CIK)、DCE10(Tonga、Fiji)、 DCE11(CZ、ST、Polaris)、DCE12(vega10)、DCN1(RV)でアトミックモード設定が利用できるようになるという。

 AMD Secure Encrypted Virtualizationの初期サポートが加わった。カーネル4.14で導入したAMD Secure Memory Encryptionのサポートに続くもので、AMD-V仮想化アーキテクチャにメモリ暗号化を統合することで暗号化された仮想マシンをサポートできる。

 mmapシステムコールでMAP_SYNCとMAP_SHARED_VALIDATEの2種類のフラグが新たに加わった。ファイルシステムが管理する永続メモリに直接書き込みができるという。

 このほか、コア、ファイルシステム、メモリ管理、ブロックレイヤ、仮想化、ネットワーキング、ドライバなどで多数の細かな機能強化が加わっている。

kernel.org
https://www.kernel.org/