cgroups v2: io.latency が存在しません

cgroups v2: io.latency が存在しません

を使用して cgroup を作成するとsudo mkdir /sys/fs/cgroup/my-cgroupio.latencyは作成されません。、、などの他の io ファイルが作成されます。io.maxio.stat内容io.pressureにはcgroup.subtree_controlが含まれますio

自分でファイルを作成しようとすると、sudo を使用しても機能しません (権限が拒否されます)。

何が問題なのかご存知ですか? 他に有効にできるものはありますか? よろしくお願いします。

Linux ディストリビューション: Pop OS 22.04
カーネル バージョン: 6.8.0

答え1

他に有効にできるものはありますか?

実行中のカーネルでドキュメント化された機能が見つからない場合、単にその機能がないことが原因である場合があります。カーネルが古すぎるか、この場合はビルド時に有効になっていなかったためです。

CONFIG_BLK_CGROUP_IOLATENCY: レイテンシベースのcgroup IO保護のサポートを有効にする

[...]

このオプションを有効にすると、IO スロットリング用の .latency インターフェイスが有効になります。IO コントローラーは、設定されたレイテンシ ターゲットを下回る平均 IO レイテンシを維持しようとし、被害グループよりもレイテンシ ターゲットが高いすべてのユーザーをスロットリングします。

注意: これは実験的なインターフェースであり、将来変更される可能性があります。

/usr/lib/linux/6.8.0-76060800daily20240311-generic/configパッケージに表示されている通り(今日現在のみ)linux-buildinfo-6.8.0-76060800daily20240311-generic_6.8.0-76060800daily20240311.202403110203~1713206908~22.04~3a62479_amd64.debまたは、次のように実行します。

grep CONFIG_BLK_CGROUP_IOLATENCY /boot/config-*

結果としてそうなるでしょう# CONFIG_BLK_CGROUP_IOLATENCY is not set

Pop!_OS (その上流の Ubuntu や Debian と同様に) ではこのオプションは有効になっていません (おそらく、現在説明に実験的なインターフェースとして記載されているためでしょうか)。

必要な場合は、このオプションを有効にしてカーネルを見つけるか、カーネルを構築する必要があります。

関連情報