我正在运行内核为 4.8.0-22-generic 的 Ubuntu 16.10 桌面版。我正在尝试启用 PCI AER 报告。
/boot/config-`uname -r`
节目
CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_PCIAER=y
CONFIG_PCIEPORTBUS=y
显然 AER 报告已启用。但在 dmesg 中我看到的是:
acpi PNP0A08: _OSC: platform does not support [AER]
我已在具有不同 SuperMicro 主板的多个系统上尝试过此操作,但看到了相同的消息。
知道哪里出了问题以及可以做什么来解决这个问题?
答案1
并非所有主板都具有 PCIe AER 根复合体。另外,我会检查您的内核启动参数中是否包含 pci=noaer。
答案2
而不是CONFIG_PCIAER=y
尝试CONFIG_PCIEAER=y
。
答案3
PCI AER 在 SuperMicro 机器的 BIOS 中默认被禁用。要检查您的机器是否也如此,请加载 BIOS 并查看 ACPI 设置,或者在主板手册中搜索“AER”。
答案4
您还需要确保 Linux 在 PCIe 本机模式下运行,以便它接管 PCIe 服务,例如热插拔、DPC、AER。许多系统在 BIOS 中没有操作系统自动进入此模式所需的功能(ACPI 4.0+ 和 _OSC 方法)。您可以使用“pcie_ports=native”内核参数强制启用它。