mce: acpi/apei: Add a boot option to disable ff mode for corrected errors
Add a boot option to disable firmware first mode for corrected errors. Signed-off-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com> Acked-by: Borislav Petkov <bp@suse.de> Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
parent
c3d1fb567a
commit
9ad95879cd
|
@ -176,6 +176,11 @@ ACPI
|
||||||
|
|
||||||
acpi=noirq Don't route interrupts
|
acpi=noirq Don't route interrupts
|
||||||
|
|
||||||
|
acpi=nocmcff Disable firmware first mode for corrected errors. This
|
||||||
|
disables parsing the HEST CMC error source to check if
|
||||||
|
firmware has set the FF flag. This may result in
|
||||||
|
duplicate corrected error reports.
|
||||||
|
|
||||||
PCI
|
PCI
|
||||||
|
|
||||||
pci=off Don't use PCI
|
pci=off Don't use PCI
|
||||||
|
|
|
@ -86,6 +86,7 @@ extern int acpi_pci_disabled;
|
||||||
extern int acpi_skip_timer_override;
|
extern int acpi_skip_timer_override;
|
||||||
extern int acpi_use_timer_override;
|
extern int acpi_use_timer_override;
|
||||||
extern int acpi_fix_pin2_polarity;
|
extern int acpi_fix_pin2_polarity;
|
||||||
|
extern int acpi_disable_cmcff;
|
||||||
|
|
||||||
extern u8 acpi_sci_flags;
|
extern u8 acpi_sci_flags;
|
||||||
extern int acpi_sci_override_gsi;
|
extern int acpi_sci_override_gsi;
|
||||||
|
@ -168,6 +169,7 @@ static inline void arch_acpi_set_pdc_bits(u32 *buf)
|
||||||
|
|
||||||
#define acpi_lapic 0
|
#define acpi_lapic 0
|
||||||
#define acpi_ioapic 0
|
#define acpi_ioapic 0
|
||||||
|
#define acpi_disable_cmcff 0
|
||||||
static inline void acpi_noirq_set(void) { }
|
static inline void acpi_noirq_set(void) { }
|
||||||
static inline void acpi_disable_pci(void) { }
|
static inline void acpi_disable_pci(void) { }
|
||||||
static inline void disable_acpi(void) { }
|
static inline void disable_acpi(void) { }
|
||||||
|
|
|
@ -66,6 +66,7 @@ EXPORT_SYMBOL(acpi_pci_disabled);
|
||||||
int acpi_lapic;
|
int acpi_lapic;
|
||||||
int acpi_ioapic;
|
int acpi_ioapic;
|
||||||
int acpi_strict;
|
int acpi_strict;
|
||||||
|
int acpi_disable_cmcff;
|
||||||
|
|
||||||
u8 acpi_sci_flags __initdata;
|
u8 acpi_sci_flags __initdata;
|
||||||
int acpi_sci_override_gsi __initdata;
|
int acpi_sci_override_gsi __initdata;
|
||||||
|
@ -1619,6 +1620,10 @@ static int __init parse_acpi(char *arg)
|
||||||
/* "acpi=copy_dsdt" copys DSDT */
|
/* "acpi=copy_dsdt" copys DSDT */
|
||||||
else if (strcmp(arg, "copy_dsdt") == 0) {
|
else if (strcmp(arg, "copy_dsdt") == 0) {
|
||||||
acpi_gbl_copy_dsdt_locally = 1;
|
acpi_gbl_copy_dsdt_locally = 1;
|
||||||
|
}
|
||||||
|
/* "acpi=nocmcff" disables FF mode for corrected errors */
|
||||||
|
else if (strcmp(arg, "nocmcff") == 0) {
|
||||||
|
acpi_disable_cmcff = 1;
|
||||||
} else {
|
} else {
|
||||||
/* Core will printk when we return error. */
|
/* Core will printk when we return error. */
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
|
@ -262,7 +262,8 @@ void __init acpi_hest_init(void)
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
apei_hest_parse(hest_parse_cmc, NULL);
|
if (!acpi_disable_cmcff)
|
||||||
|
apei_hest_parse(hest_parse_cmc, NULL);
|
||||||
|
|
||||||
if (!ghes_disable) {
|
if (!ghes_disable) {
|
||||||
rc = apei_hest_parse(hest_parse_ghes_count, &ghes_count);
|
rc = apei_hest_parse(hest_parse_ghes_count, &ghes_count);
|
||||||
|
|
Loading…
Reference in New Issue