Linuxカーネルの近年の主な変更点まとめ

近年のLinuxカーネルバージョンで何が変わったのか気になったのでまとめてみました。

Linuxカーネルの主な変更点

※バージョン番号の後ろのカッコ内はリリース年月日

5.2 (2019.07.07)

  • Sound Open Firmware(SOF)コアをマージ
  • BFQ I/Oスケジューラーの性能を大幅に改善
  • PSI(Presure Stall Information)の強化
  • mountAPIの再設計(新規に6種類のシステムコールも追加)
  • ext4に大文字小文字区別なしファイル名参照オプション追加
  • xfsにヘルスレポートインフラのサポートの追加
  • btrfs、ceph、cifs、fuse、nfs、afsなども強化
  • ARM Maliアクセラレーター向けコミュニティドライバー2種追加
  • Microarchitectural Data Sampling(MDS)脆弱性に対応するCPUバグ保護
  • レガシーのIDEドライバー非推奨

5.1 (2019.05.05)

  • 非同期I/O向け高性能インターフェイスio_uringの導入
  • NVDIMMなど物理的な永続メモリをRAMとして利用できるよう機能強化
  • ライブパッチに累積パッチ機能を追加
  • fanotifyを強化し「super block root watch」機能を導入
  • LSM(Linux Security Module)を強化
  • SafeSetID LSMモジュールを追加
  • FCAPS v3のサポート追加
  • Habana LabsのAI Processors(AIP)のドライバサポートを追加

5.0 (2019.03.03)

  • Arm big.LITTLE向けスケジューリングの追加
  • AMD FreeSync/VRRのサポートを追加
  • Adiantumファイルシステムの暗号化を追加
  • Btrfsのファイルスワップのサポートを復活
  • cifs、f2fs、autofsなどの強化
  • Android Binder IPCドライバ向け擬似ファイルシステムbinderfsの追加
  • seccompの強化
  • NVIDIA GeForce RTX 2000などのドライバサポート追加

4.20 (2018.12.23)

  • btrfs性能の強化
  • F2FS、FUSEの強化
  • 「PCI peer-to-peer memory」のサポート強化
  • taprioトラフィックスケジューラーの導入
  • コード内のVLA(可変長配列)を完全削除
  • 新しいデータ構造XArraysの導入
  • コードのクリーニング
  • AMD PicassoとRaven 2のサポート
  • Vega 20やIntel Icelake Gen 11グラフィック対応
  • 「Hygon Dhyana」や、中国独自CPU「C-Sky」のサポート
  • Raven Ridge向けVCN JPEGアクセラレーションのサポート

4.19 (2018.10.22)

  • IEEE802.11ax(WiFi 6)の暫定サポート
  • キュー管理システムCommon Applications Kept Enhanced(CAKE)の導入
  • 最小限のI/O遅延保証を目的とする最新のコントローラーを導入
  • 非同期I/Oポーリングインターフェイスの追加
  • EROFS(Enhanced Read-Only File System)の実験的サポート
  • BTRFS、XFS、EXT4などの強化

4.18 (2018.08.12)

  • FUSE(Filesystem in Userspace)特権なしの非特権ファイルシステムのマウント
  • 「Lustre」ファイルシステムのサポート廃止
  • Btrfs、F2FSなどの強化
  • Speckファイルシステム暗号化のサポート
  • ユーザー空間の並列処理用Restartable Servicesシステムコールの追加
  • セキュリティ機構AppArmorの監査ルールフィルタリングのサポート
  • 2038年問題への準備関連の作業
  • パケットフィルタリングファイアウォールに「BPFILTER」をマージ
  • ゼロコピーTCPを受け取るAPIを新規追加
  • 高性能ネットワーク向けのAF_XDPメカニズムの導入
  • 「amdgpu」ドライバーのサポート強化
  • Intel Icelake関連の強化
  • コードの軽量化

4.17 (2018.06.03)

  • Blackfin、CRIS、FRV、MN10300など8種類の古いアーキテクチャのサポート削除
  • POWER4/POWER4+をサポート対象外化
  • Andes NDS32アーキテクチャを新規サポート
  • NVIDIA Tegra Xavier SoCの初期サポート追加
  • IBM s390にSpectre脆弱性に対する保護を追加
  • コードの軽量化
  • CPUスケジューラーの読み込み予測の改善
  • Linux Kernel Memory Consistency Model(LKMCM)の追加
  • アイドル時の省電力改善
  • F2FSの性能と整合性の強化
  • EXT4に悪意あるコンテナイメージからの保護を追加
  • XFSにlazytimeサポート追加
  • 次期AMD Radeon Vega 12 GPUのサポート
  • AMDGPU DC(Display Code)をデフォルトで有効化
  • IntelのCannonlakeサポートをデフォルトで有効化
  • Intel HDCP(High-bandwidth Digital Content Protection)のサポートをマージ

4.16 (2018.04.01)

  • arm64、IBM z S390などでSpectre、Meltdown関連の修正
  • ARM暗号化の強化
  • Intel CPU L2キャッシュパーティション、POWERメモリ保護キーのサポートなどの強化
  • ユーザー空間ホワイトリストのマージ
  • Hyper-VゲストでのPCID(Process Context Identifiers)サポートを有効化
  • EXT4、F2FS、AFS、XFS、Btrfsなどでの修正や強化
  • inode i_versionの強化によるI/Oの速度の改善
  • VirtualBox Guestドライバのマージ
  • KVMでAMDのSecure Encrypted Virtualization(SEV)機能をサポート
  • printk()の処理を複数のCPUに分散するよう変更
  • gcc-pluginsインフラでのGCC8のサポート
  • AMDGPU DCでマルチディスプレイ同期をサポート
  • NVIDIA Jetson TX2ディスプレイのサポート

4.15 (2018.01.28)

  • CPUの脆弱性Meltdown及びSpectreへの対応
  • IntelのUser Mode Instruction Preventionのサポート
  • CPUの使用制限を改善するコントローラーの追加
  • AHCIのALPM(Aggressive Link Power Management)の不具合改善
  • RISC-Vアーキテクチャを新規サポート
  • AMDのGPUドライバーamdgpuの対応強化
  • AMD Secure Encrypted Virtualizationの初期サポート追加
  • mmapシステムコールに2種類の新規フラグ追加