提交 b6a95016 编写于 作者: H Huang Ying 提交者: Len Brown

ACPI, APEI, GHES, Support disable GHES at boot time

Some machine may have broken firmware so that GHES and firmware first
mode should be disabled.  This patch adds support to that.
Signed-off-by: NHuang Ying <ying.huang@intel.com>
Reviewed-by: NAndi Kleen <ak@linux.intel.com>
Reviewed-by: NMatthew Garrett <mjg@redhat.com>
Signed-off-by: NLen Brown <len.brown@intel.com>
上级 86cd4733
......@@ -77,6 +77,9 @@ struct ghes {
};
};
int ghes_disable;
module_param_named(disable, ghes_disable, bool, 0);
static int ghes_panic_timeout __read_mostly = 30;
/*
......@@ -665,6 +668,11 @@ static int __init ghes_init(void)
return -EINVAL;
}
if (ghes_disable) {
pr_info(GHES_PFX "GHES is not enabled!\n");
return -EINVAL;
}
rc = ghes_ioremap_init();
if (rc)
goto err;
......
......@@ -231,16 +231,17 @@ void __init acpi_hest_init(void)
goto err;
}
rc = apei_hest_parse(hest_parse_ghes_count, &ghes_count);
if (rc)
goto err;
rc = hest_ghes_dev_register(ghes_count);
if (!rc) {
pr_info(HEST_PFX "Table parsing has been initialized.\n");
return;
if (!ghes_disable) {
rc = apei_hest_parse(hest_parse_ghes_count, &ghes_count);
if (rc)
goto err;
rc = hest_ghes_dev_register(ghes_count);
if (rc)
goto err;
}
pr_info(HEST_PFX "Table parsing has been initialized.\n");
return;
err:
hest_disable = 1;
}
......@@ -18,6 +18,7 @@
extern int hest_disable;
extern int erst_disable;
extern int ghes_disable;
#ifdef CONFIG_ACPI_APEI
void __init acpi_hest_init(void);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册