Linux cgroupsv2 缺少 PSI 文件

Linux cgroupsv2 缺少 PSI 文件

我目前正在尝试从 cgroup 文件系统读取内存和 IO 压力。我可以确认我确实正在运行 cgroupsv2,因为 的输出 cat /sys/fs/cgroup/cgroup.controllers给了我

cpuset cpu io memory pids

/sys/fs/cgroup文件夹中我有以下文件/文件夹

cgroup.controllers  cgroup.procs        cgroup.threads         cpu.stat     user.slice
cgroup.max.depth    cgroup.stat     cpuset.cpus.effective  init.scope  memory.stat
cgroup.max.descendants  cgroup.subtree_control  cpuset.mems.effective  io.stat     system.slice

不过我也希望每个控制器都有相应的压力文件

cpu.pressure io.pressure memory.pressure

系统正在Raspbian GNU/Linux 10 (buster)运行systemd.unified_cgroup_hierarchy=1/boot/cmdline.txt

答案1

问题在于内核未使用 PSI 功能进行编译。要检查您的内核是否具有此功能,请首先检查内核配置。使用sudo modprobe configs; zcat /proc/config.gz > .configgrep "CONFIG_PSI" .config检查其是否已设置。如果被禁用,则可以通过在引导期间传递内核命令行CONFIG_PSI来启用它。psi=1但是,如果 grep 返回,#CONFIG_PSI is not set那么您需要重新编译内核以启用 PSI。

相关内容