Столкнулся с ошибкой ACPI в Oracle Linux. Сервер HP ProLiant DL 360 Gen9. Каждую минуту в консоли отображалась ошибка:
ACPI Error: Method parse/execution failed [\_SB_.PMI0._PMM], AE_AML_BUFFER_LIMIT (20171215/psparse-550)
ACPI Error: AE_AML_BUFFER_LIMIT, Evaluating _PMM (20171215/power_meter-338)
ACPI Error: SMBus/IPMI/GenericSerialBus write requires Buffer of length 66, found length 32 (20171215/exfield-427)
Интернет подсказал, что проблема решается обновлением BIOS.
Судя по всему, какой-то софт начал резво обращаться к датчику мощности блока питания. А тот не работает.
ACPI (Advanced Configuration and Power Interface) — открытый стандарт для взаимодействия операционной системы и железа. Позволяет ОС обнаруживать аппаратное обеспечение сервера, управлять питанием и конфигурацией устройств. Разработан совместно с HP, Intel, Microsoft, Phoenix и Toshiba в 1996 году. Принцип работы: в определённой области оперативной памяти размещаются таблицы ACPI, к которым имеют доступ ОС и железо.
Для проверки я вызвал похожую ошибку вручную.
find /sys/devices/LNXSYSTM\:00/ |grep ACPI000D
cat /sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI000D:00/power1_average
После этого в консоли появляется подобная ошибка.
В общем, пока BIOS не обновлён, ошибка не исправится. Можно отключить датчик сенсора в ОС, чтобы ошибка не спамила в консоль:
modprobe -r acpi_power_meter
echo "blacklist acpi_power_meter" >> /etc/modprobe.d/hwmon.conf