pci_disable_msi(9)
π pci_disable_msi(9) β from the Kernel API Manual besties π
okay so grab a lil snack because we're talking about turning off MSI interrupt mode, and honestly? it's giving cleanup era β¨
β¨ NAME β¨
pci_disable_msi β disable MSI interrupt mode on a device, like, off off π«Ά
πΈ SYNOPSIS πΈ
void pci_disable_msi (struct pci_dev *dev );
π¦ ARGUMENTS π¦
devβ the PCI device to operate on. that's your girl, that's the one we're doing this to π
π DESCRIPTION π
so this is the legacy device driver API and what it does is disable MSI interrupt mode on the device, free the interrupt vectors that were allocated earlier, and restore INTx emulation. like it literally puts everything back the way it was π§Ήβ¨
the PCI device Linux IRQ (dev->irq) gets restored to its default pin-assertion IRQ. periodt.
and the way that this is the cleanup pair of pci_enable_msi β they're a matched set, bestie, you don't take one without the other, iykyk π₯
π NOTE π
okay real talk, the newer pci_alloc_irq_vectors / pci_free_irq_vectors API pair should, in general, be used instead. no cap. like this one is lowkey the old way π
π SEE ALSO π
Kernel file ./drivers/pci/msi/api.c and all her friends:
pci_enable_msi(9)pci_msix_vec_count(9)pci_enable_msix_range(9)pci_msix_can_alloc_dyn(9)pci_msix_alloc_irq_at(9)pci_msix_free_irq(9)pci_disable_msix(9)pci_alloc_irq_vectors(9)pci_alloc_irq_vectors_affinity(9)pci_irq_vector(9)pci_irq_get_affinity(9)pci_free_irq_vectors(9)pci_restore_msi_state(9)pci_msi_enabled(9)
and that's the whole vibe π this lil icon lives in ./drivers/pci/msi, it's serving October 2026 energy, and it's literally titled pci_disable_msi(9). slay, go free those vectors bestie πβ¨
π¦ 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