禁用 acpi_pad 以解决该问题

事件起因

使用 UPS 供电时会出现大量 acpi_pad 进程导致高 CPU 占用

问题分析

查了一圈这是已知问题, Intel 和 各家大厂 均建议禁用

Intel 文档 第8页

BIOS 请求 acpi_pad 驱动程序将特定数量的处理器切换至 High C 状态以降低功耗
acpi pad 驱动程序会在每个待闲置的处理器上创建一个省电线程

简单来说就是 BIOS 要求 CPU 省电, 于是 acpi_pad 就开了一个 100% 占用的线程独占整个核心

什么傻逼设计

DELL 文档 第22页末尾

相关文档

解决方法

任选其一

  • 使用 /etc/modules.d/blacklist.conf
echo "blacklist acpi_pad" > /etc/modprobe.d/blacklist.conf

然后更新 initrd / initramfs

update-initramfs -u 

完成以后需要重启, 不重启可以使用 rmmod acpi_pad 解决问题

  • 修改内核命令行
    使用 acpi_pad.disable=1 禁用 acpi_pad 或直接使用 acpi=off 禁用整个 ACPI
最后修改:2025 年 08 月 08 日
如果觉得我的文章对你有用,请随意赞赏