apic_soft_disable(9)
π apic_soft_disable β a kernel API manual moment (section 9 of the kernel API manual, bestie)
okay so you found your way to apic_soft_disable(9) and honestly? iconic. this is the Kernel API Manual and we're about to get into it. π
β¨ NAME β¨
apic_soft_disable β clears and software-disables the local APIC on hotplug. literally that's the whole job. no cap. π¦
πΈ SYNOPSIS πΈ
void apic_soft_disable (void );
π ARGUMENTS π
voidβ no arguments. that's it. zero. none. the void is voiding. π
π₯ DESCRIPTION π₯
okay so here's the tea β β unlike disable_local_APIC, this function does not touch the enable bit in MSR_IA32_APICBASE. not even a little. hands off. π
why, you ask? because clearing that bit on systems based on the 3 wire APIC bus would require a hardware reset, since the APIC would lose track of bus arbitration. like, the whole vibe would be ruined and you can't just undo it. π
now, on systems with FSB delivery, APICBASE could be disabled β but only if it's guaranteed that no interrupt is sent to the APIC while it's in that state. and here's the messy part: it's not clear from the SDM whether it still responds to INIT/SIPI messages. π« so we stay on the safe side and use software disable. periodt. π
ngl bestie, the whole energy here is "we could, but should we?" and the answer is no. safe side only. π§
β SEE ALSO β
- the kernel file
./arch/x86/kernel/apic/apic.c lapic_get_maxlvt(9)clear_local_APIC(9)disable_local_APIC(9)sync_Arb_IDs(9)setup_local_APIC(9)init_apic_mappings(9)spurious_interrupt(9)connect_bsp_APIC(9)disconnect_bsp_APIC(9)apic_bsp_setup(9)
and that's the whole page, bestie! π«Ά this one lives in ./arch/x86/kernel/apic and it's dated October 2026 β so like, future vibes. go read the other APIC pages, they ate. πππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms