4.8. カーネル
RHEL 9.2 のカーネルバージョン
Red Hat Enterprise Linux 9.2 は、カーネルバージョン 5.14.0-284.11.1 で配布されます。
64k ページサイズのカーネルが利用可能になりました。
4k ページをサポートする RHEL 9 for ARM カーネルに加えて、Red Hat は 64k ページをサポートするオプションのカーネルパッケージ kernel-64k
を提供するようになりました。
64k ページサイズのカーネルは、ARM プラットフォーム上の大規模なデータセットに便利なオプションです。これにより、メモリーや CPU を大量に消費する一部の操作のパフォーマンスが向上します。
64 ビット ARM アーキテクチャーシステムでは、インストール時にページサイズを選択する必要があります。kernel-64k
パッケージを Kickstart
ファイルのパッケージリストに追加すると、Kickstart のみで kernel-64k
をインストールできます。
kernel-64k
のインストールの詳細は、RHEL の自動インストール を参照してください。
Bugzilla:2153073
kexec-tools
の virtiofs
サポートが有効になりました。
この機能拡張では、新しいオプション virtiofs myfs
を導入することにより、kexec-tools
の virtiofs
機能が追加されます。ここで、myfs
は、qemu
コマンドラインで設定する変数タグ名です (-device vhost-user-fs-pci,tag=myfs
など)。
virtiofs
ファイルシステムには、ホスト上にエクスポートされたディレクトリーをゲストがマウントできるようにするドライバーが実装されています。この機能拡張を使用すると、仮想マシンの vmcore
ダンプファイルを次の場所に保存できます。
-
virtiofs
共有ディレクトリー。 -
ルートファイルシステムが
virtiofs
共有ディレクトリーである場合は、サブディレクトリー (/var/crash
など)。 -
仮想マシンのルートファイルシステムが
virtiofs
共有ディレクトリーである場合は、別のvirtiofs
共有ディレクトリー。
kexec-tools
パッケージにリモート kdump
ターゲットの機能強化が追加されました。
この機能拡張により、kexec-tools
パッケージに重要なバグ修正と機能拡張が追加されました。以下は、主な変更点です。
-
必要なネットワークインターフェイスのみを有効にすることで、
kdump
のメモリー消費を最適化しました。 接続タイムアウト障害が発生した場合の
kdump
のネットワーク効率が向上しました。ネットワークが確立されるまでのデフォルトの待ち時間は最大 10 分です。これにより、キャリアを識別するための回避策として
rd.net.timeout.carrier
やrd.net.timeout.dhcp
などのdracut
パラメーターを渡す必要がなくなります。
BPF がバージョン 6.0 にリベースされました。
Berkeley Packet Filter (BPF) 機能が複数の拡張機能を備えた Linux カーネルバージョン 6.0 にリベースされました。この更新により、カーネルモジュールの BPF Type Format (BTF) に依存するすべての BPF 機能が有効になります。このような機能には、トレース用の BPF トランポリンの使用、Compile Once - Run Everywhere (CO-RE) メカニズムの可用性、および複数のネットワーク関連機能が含まれます。さらに、カーネルモジュールにはデバッグ情報が含まれるようになりました。つまり、実行中のモジュールを検査するために debuginfo
パッケージをインストールする必要がなくなりました。
実行中のカーネルで使用できる BPF 機能の完全なリストの詳細は、bpftool feature
コマンドを使用してください。
Jira:RHELPLAN-133650
rtla
メタツールは、トレース機能を向上させるために osnoise
および timerlat
トレーサーを追加します。
Real-Time Linux Analysis (rtla
) は、Linux のリアルタイムプロパティーを分析する一連のコマンドを含むメタツールです。rtla
は、カーネルトレース機能を利用して、予期しないシステム結果のプロパティーと根本原因に関する正確な情報を提供します。rtla
は現在、osnoise
および timerlat
トレーサーコマンドのサポートを追加しています。
-
osnoise
トレーサーは、オペレーティングシステムのノイズに関する情報を報告します。 -
timerlat
トレーサーは、タイマー IRQ ハンドラーおよびスレッドハンドラーでのタイマーレイテンシーを定期的に出力します。
rtla
の timerlat
機能を使用するには、sysctl -w kernel.sched_rt_runtime_us=-1
スクリプトを使用して、アドミッションコントロールを無効にする必要があることに注意してください。
Bugzilla:2075216
Tuna のargparse
モジュールが CPU ソケットの設定をサポートするようになりました。
この機能強化により、複数の CPU ソケットがある場合に特定の CPU ソケットを指定できるようになります。サブコマンドで -h
を使用すると、ヘルプの使用法を表示できます (tuna show_threads -h
など)。
特定の CPU ソケットを設定するには、CPU ソケットを使用する必要がある各 tuna
コマンドで -S
オプションを指定します。
tuna <command> [-S CPU_SOCKET_LIST]
たとえば、tuna show_threads -S 2,3
を使用してスレッドを表示するか、tuna show_irqs -S 2,3
を使用してアタッチされた割り込み要求 (IRQ) を表示します。
結果として、この機能強化により、各 CPU を個別に指定する必要がなく、CPU ソケットに基づいた CPU 使用が容易になります。
Tuna の cgroups
と irqs
の出力形式が改善され、読みやすくなりました。
この機能強化により、cgroup
ユーティリティーの tuna show_threads
コマンド出力が端末のサイズに基づいて構造化されるようになりました。新しい -z
または --spaced
オプションを show_threads
コマンドに追加することで、cgroups
出力に追加のスペースを設定することもできます。
その結果、cgroups
出力は、端末のサイズに合わせて読みやすい形式に改良されました。
新しいコマンドラインインターフェイスがリアルタイムで tuna
ツールに追加されました。
この機能拡張により、argparse
解析モジュールに基づく新しいコマンドラインインターフェイスが tuna
ツールに追加されます。この更新により、次のタスクを実行できるようになりました。
- アプリケーションおよびカーネルスレッドの属性を変更します。
- 名前または番号によって割り込み要求 (IRQ) を操作します。
- プロセス識別子を使用してタスクまたはスレッドを操作します。
- CPU またはソケット番号を使用して、CPU と CPU セットを指定します。
tuna -h
コマンドを使用すると、コマンドライン引数とそれに対応するオプションを出力できます。各コマンドにはオプションの引数があり、tuna <command> -h
コマンドで表示できます。
その結果、tuna
は、コマンドラインインターフェイスよりも使いやすく保守しやすい、より標準化されたコマンドとオプションのメニューを備えたインターフェイスを提供するようになりました。
rteval
コマンドの出力には、プログラムのロードと測定スレッドの情報が含まれるようになりました。
rteval
コマンドは、プログラムのロード数、測定スレッド、およびこれらのスレッドを実行した対応する CPU を含むレポートの概要を表示するようになりました。この情報は、特定のハードウェアプラットフォームの負荷下でのリアルタイムカーネルのパフォーマンスを評価するのに役立ちます。
rteval
レポートは、システムのブートログとともに XML ファイルに書き込まれ、rteval-<date>-N-tar.bz2
圧縮ファイルに保存されます。date
はレポート生成日を指定し、N
は N 回目の実行のカウンターです。
rteval
レポートを生成するには、次のコマンドを入力します。
# rteval --summarize rteval-<date>-N.tar.bz2
レイテンシーを測定するために、-W
および --bucket-width
オプションが oslat
プログラムに追加されました。
この機能強化により、単一バケットのレイテンシー範囲をナノ秒の精度で指定できるようになりました。1000 ナノ秒の倍数ではない幅は、ナノ秒の精度を示します。新しいオプション -W
または --bucket-width
を使用すると、バケット間のレイテンシー間隔を変更して、マイクロ秒未満の遅延時間内のレイテンシーを測定できます。
たとえば、1 - 4 の CPU 範囲で実行するために 10 秒間にわたって 32 個のバケットのレイテンシーバケット幅を 100 ナノ秒に設定し、ゼロのバケットサイズを省略するには、次のコマンドを実行します。
# oslat -b 32 -D 10s -W 100 -z -c 1-4
このオプションを使用する前に、誤差測定に関してどのレベルの精度が重要であるかを判断する必要があることに注意してください。
kdump
ストレージターゲットとして有効になった NVMe/FC
トランスポートプロトコル。
kdump
メカニズムは、ダンプターゲットとしてファイバーチャネル (NVMe/FC) プロトコル上の Nonvolatile Memory Express (NVMe) のサポートを提供するようになりました。この更新により、カーネルクラッシュダンプファイルを NVMe/FC ストレージターゲットに保存するように kdump
を設定できるようになります。
その結果、kdump
は、カーネルクラッシュが発生した場合でも、timeout
や reconnect
エラーを発生させることなく、vmcore
ファイルをキャプチャーして NVMe/FC
に保存できます。
NVMe/FC 設定の詳細は、ストレージデバイスの管理 を参照してください。
Bugzilla:2080110
crash-utility
ツールがバージョン 8.0.2 にリベースされました。
アクティブなシステム状態またはカーネルクラッシュ後の分析を行う crash-utility
がバージョン 8.0.2 にリベースされました。注目すべき変更には、multiqueue(blk-mq)
デバイスのサポートの追加が含まれます。dev -d
または dev -D
コマンドを使用すると、multiqueue(blk-mq)
デバイスのディスク I/O 統計を表示できます。
openssl-ibmca
がバージョン 2.3.1 にリベースされました。
64 ビット IBM Z アーキテクチャー上の IBMCA の動的 OpenSSL エンジンとプロバイダーがアップストリームバージョン 2.3.1 にリベースされました。RHEL 9 のユーザーは、OpenSSL の今後の更新との互換性を確保するために、OpenSSL プロバイダー を使用することを推奨します。エンジン 機能は OpenSSL バージョン 3 で非推奨になりました。
Bugzilla:2110378
顧客キーを使用した Secure Execution ゲストダンプ暗号化
この新機能により、kdump
ユーティリティーが機能しないシナリオで、Secure Execution ゲストのハイパーバイザー開始ダンプが KVM からカーネルクラッシュ情報を収集できるようになります。Secure Execution のハイパーバイザー開始ダンプは、IBM Z シリーズ z16 および LinuxONE Emperor 4 ハードウェア向けに設計されていることに注意してください。
Bugzilla:2044204
リアルタイムの TSN プロトコルが ADL-S プラットフォームで有効になりました。
この機能強化により、IEEE Time Sensitive Networking (TSN) 仕様により、Intel Alder Lake S (ADL-S) プラットフォーム上のネットワーク上でのリアルタイムワークロードの時刻同期と確定的処理が可能になります。次のネットワークデバイスをサポートします。
- TSN サポートを備えたディスクリート 2.5GbE MAC-PHY コンボ: Intel® i225/i226
-
1GbE および 2.5Gbe 速度をカバーする Marvell、Maxlinear、TI のサードパーティー PHY チップを備えた SOC 内の統合 2.5GbE MAC は、一部の
SKU
および SOC で利用できます。
TSN プロトコルを使用すると、組み込み実装での決定論的なアプリケーションのスケジューリング、プリエンプション、および正確な時刻同期タイプのワークロードを管理できます。これらの実装には専用の特殊な独自のネットワークが必要ですが、ワークロードは標準のイーサネット、Wi-Fi、および 5G ネットワークで実行されます。
その結果、TSN は次の機能を向上させました。
- ハードウェア: IoT でのリアルタイムワークロードの実装に使用される Intel ベースのシステム
- 決定的で時間に敏感なアプリケーション
Bugzilla:2100606
Intel Ice
ドライバーがバージョン 6.0.0 にリベースされました。
Intel ice
ドライバーはアップストリームバージョン 6.0.0 にアップグレードされ、以前のバージョンに比べて多くの機能強化とバグ修正が行われました。注目すべき機能強化には次のものがあります。
-
Point-to-Point Protocol over Ethernet (
PPPoE
) プロトコルのハードウェアオフロード -
Inter-Integrated Circuit (
I2C
) プロトコル書き込みコマンド -
イーサネットスイッチデバイスドライバーモデル (
switchdev
) の VLAN タグプロトコル識別子 (TPID
) フィルター -
switchdev
での二重 VLAN タグ付け
Bugzilla:2104468
GNSS
モジュールのデータを書き込むオプションが利用可能になりました。
この更新では、gnss
レシーバーにデータを書き込むオプションが提供されます。以前は、gnss
は完全には設定できませんでした。この機能強化により、すべての gnss
機能が利用できるようになりました。
Bugzilla:2111048
IBM zSystems のセキュアブート証明書のホスティング
IBM z16 A02/AGZ および LinuxONE Rockhopper 4 LA2/AGL 以降、ハードウェア管理コンソール (HMC) でセキュアブートを有効にしてシステムを起動するときに、Linux カーネルの検証に使用される証明書を管理できるようになりました。以下に例を示します。
- DPM およびクラシックモードで HMC を使用し、HMC からアクセスできる FTP サーバーからシステム証明書ストアに証明書をロードできます。HMC に接続された USB デバイスから証明書をロードすることもできます。
- 証明書ストアに保存されている証明書を LPAR パーティションに関連付けることができます。複数の証明書を 1 つのパーティションに関連付けたり、1 つの証明書を複数のパーティションに関連付けたりできます。
- HMC インターフェイスを使用して、証明書ストア内の証明書の関連付けをパーティションから解除できます。
- 証明書ストアから証明書を削除できます。
- 最大 20 個の証明書を 1 つのパーティションに関連付けることができます。
ビルトインのファームウェア証明書は引き続き使用できます。ユーザー管理の証明書ストアを使用するとすぐに、ビルトインの証明書は使用できなくなります。
証明書ストアにロードする証明書ファイルは、次の要件を満たしている必要があります。
-
PEM
またはDER-encoded X.509v3
形式で、ファイル名拡張子が.pem
、.cer
、.crt
、または.der
のいずれかである。 - 有効期限が切れていない。
- キー使用属性が デジタル署名 である。
- 拡張キー使用属性に コード署名 が含まれている。
ファームウェアインターフェイスを使用すると、論理パーティションで実行されている Linux カーネルが、このパーティションに関連付けられた証明書をロードできるようになります。Linux on IBM Z は、これらの証明書を .platform
キーリングに保存して、Linux カーネルが kexec
カーネルを検証し、そのパーティションに関連付けられた証明書を使用してサードパーティーのカーネルモジュールを検証できるようにします。
検証済みの証明書のみをアップロードし、失効した証明書を削除するのは、オペレーターの責任です。
HMC に読み込む必要がある Red Hat Secureboot 302
証明書は、Product Signing Keys から入手できます。
Bugzilla:2190123
zipl
が 64 ビット IBM Z でのセキュアブート IPL とダンプをサポート
この更新により、zipl
ユーティリティーは、64 ビット IBM Z アーキテクチャー上の Extended Count Key Data (ECKD) Direct Access Storage Devices (DASD) からの List-Directed IPL および List-Directed ダンプをサポートします。その結果、IBM Z での RHEL のセキュアブートは、ECKD タイプの DASD でも動作します。
Bugzilla:2044200
rtla
がアップストリーム kernel
ソースコードのバージョン 6.6 にリベース
rtla
ユーティリティーが最新のアップストリームバージョンにアップグレードされ、複数のバグ修正および機能拡張が追加されました。主な変更点は、以下のとおりです。
-
メインの
rtla
スレッドとは別に、実行するrtla
スレッドの追加コントロールグループを指定する-C
オプションが追加されました。 -
rtla
スレッドをハウスキーピング CPU に配置し、測定スレッドを異なる CPU に配置する--house-keeping
オプションが追加されました。 -
timerlat hist
およびtimerlat top
スレッドをユーザー空間で実行できるように、timerlat
トレーサーのサポートが追加されました。
Jira:RHEL-18359