Что на самом деле делают параметры загрузки noapic и noacpi? - PullRequest
0 голосов
/ 26 октября 2018

У меня были проблемы с загрузкой Ubuntu на машине и добавлением noapic и noacpi к опции загрузки vmlinuz.

Мне известно, что noapic отключает переназначение прерываний, и noacpi относится к конфигурации конфигурации, но что они на самом деле делают в ядре Linux?Они пропускают загрузку определенных модулей?

1 Ответ

0 голосов
/ 26 октября 2018

Согласно Руководство администратора Linux Документация по параметрам ядра ,

noapic          [SMP,APIC] Tells the kernel to not make use of any
                IOAPICs that may be present in the system.
pci=noacpi      [X86] Do not use ACPI for IRQ routing
            or for PCI scanning.

С программной точки зрения noapic устанавливает переменную disable_apic в 1 в setup_disableapic из /arch/x86/kernel/apic/apic.c, что приводит к apic_intr_mode_select возвращению APIC_PIC, что приводит к apic_intr_mode_init функция, покидающая PIC в режиме PIC (8259) и в default_setup_apic_routing, не вызывается.

И pci=noacpi вызовы приводит к parse_pci(char *arg) в https://elixir.bootlin.com/linux/v4.19/source/arch/x86/kernel/acpi/boot.c#L1689, вызову acpi_disable_pci , который устанавливает acpi_pci_disabled в 1 и вызывает acpi_noirq_set, как указано в документации.

Дополнительную справочную информацию см. В следующих ресурсах Каковы параметры загрузки ядра "acpi" и "noapic"? База знаний Redhat и IRQ, ACPI и APIC и ядро ​​Linux

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...