mirror of
https://github.com/torvalds/linux.git
synced 2024-11-17 09:31:50 +00:00
x86, irq: don't call mp_config_acpi_gsi() if update_mptable is not enabled
Len expressed concern that the update_mptable feature has side-effects on the ACPI code. Make it sure explicitly that the code only ever gets called if the (default disabled) update_mptable boot quirk option is disabled. [ Impact: isolate the update_mptable feature from ACPI code more ] Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Len Brown <lenb@kernel.org> LKML-Reference: <4A0DC832.5090200@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
629e15d245
commit
f1bdb52388
@ -87,6 +87,15 @@ static inline int acpi_probe_gsi(void)
|
|||||||
}
|
}
|
||||||
#endif /* CONFIG_ACPI */
|
#endif /* CONFIG_ACPI */
|
||||||
|
|
||||||
|
#ifdef CONFIG_X86_MPPARSE
|
||||||
|
extern int enable_update_mptable;
|
||||||
|
#else
|
||||||
|
static inline int enable_update_mptable(void)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#define PHYSID_ARRAY_SIZE BITS_TO_LONGS(MAX_APICS)
|
#define PHYSID_ARRAY_SIZE BITS_TO_LONGS(MAX_APICS)
|
||||||
|
|
||||||
struct physid_mask {
|
struct physid_mask {
|
||||||
|
@ -1226,7 +1226,9 @@ int mp_register_gsi(struct device *dev, u32 gsi, int trigger, int polarity)
|
|||||||
ioapic_pin);
|
ioapic_pin);
|
||||||
return gsi;
|
return gsi;
|
||||||
}
|
}
|
||||||
mp_config_acpi_gsi(dev, gsi, trigger, polarity);
|
|
||||||
|
if (enable_update_mptable)
|
||||||
|
mp_config_acpi_gsi(dev, gsi, trigger, polarity);
|
||||||
|
|
||||||
set_io_apic_irq_attr(&irq_attr, ioapic, ioapic_pin,
|
set_io_apic_irq_attr(&irq_attr, ioapic, ioapic_pin,
|
||||||
trigger == ACPI_EDGE_SENSITIVE ? 0 : 1,
|
trigger == ACPI_EDGE_SENSITIVE ? 0 : 1,
|
||||||
|
@ -957,7 +957,7 @@ out:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __initdata enable_update_mptable;
|
int enable_update_mptable;
|
||||||
|
|
||||||
static int __init update_mptable_setup(char *str)
|
static int __init update_mptable_setup(char *str)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user