Unverified Commit 2fb29dd6 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!15293 ras: ACPI: HED: Always initialize before evged

Merge Pull Request from: @zhangqizhi3 
 
When the HED driver is built-in, it initializes after evged because they
both are at the same initcall level, so the initialization ordering
depends on the Makefile order.  However, this prevents RAS records
coming in between the evged driver initialization and the HED driver
initialization from being handled.

If the number of such RAS records is above the APEI HEST error source
number, the HEST resources may be exhausted, and that may affect
subsequent RAS error reporting.

To fix this issue, change the initcall level of HED to subsys_initcall
and prevent the driver from being built as a module by changing ACPI_HED
in Kconfig from "tristate" to "bool". 
 
Link:https://gitee.com/openeuler/kernel/pulls/15293

 

Reviewed-by: default avatarXiaoFei Tan <tanxiaofei@huawei.com>
Reviewed-by: default avatarXiongfeng Wang <wangxiongfeng2@huawei.com>
Reviewed-by: default avatarLi Nan <linan122@huawei.com>
Signed-off-by: default avatarLi Nan <linan122@huawei.com>
parents b0deb20d 2007dd90
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -432,7 +432,7 @@ config ACPI_SBS
	  the modules will be called sbs and sbshc.

config ACPI_HED
	tristate "Hardware Error Device"
	bool "Hardware Error Device"
	help
	  This driver supports the Hardware Error Device (PNP0C33),
	  which is used to report some hardware errors notified via
+6 −1
Original line number Diff line number Diff line
@@ -72,7 +72,12 @@ static struct acpi_driver acpi_hed_driver = {
		.notify = acpi_hed_notify,
	},
};
module_acpi_driver(acpi_hed_driver);

static int __init acpi_hed_driver_init(void)
{
	return acpi_bus_register_driver(&acpi_hed_driver);
}
subsys_initcall(acpi_hed_driver_init);

ACPI_MODULE_NAME("hed");
MODULE_AUTHOR("Huang Ying");