Module Name: src Committed By: thorpej Date: Sat Sep 26 02:46:28 UTC 2020
Modified Files: src/sys/arch/alpha/include: pci_machdep.h src/sys/arch/alpha/pci: pci_machdep.c Log Message: Add support for CPU interrupt affinity for PCI interrupts: - Keep a bitmap of eligible interrupt-handling CPUs in the pci_chipset_tag_t. If this bitmap is 0, then we assume that all PCI interrupts should be routed to the primary CPU. - Add an optional PCI chipset callback for setting the CPU affinity of an interrupt. - When an establishing an interrupt handler, select the CPU that will handle this irq using the following algorithm: ==> If the irq already has a CPU assignment, keep it. ==> Otherwise, find the CPU with the fewest registered handlers that is eligible from both a hardware (based on the pci_chipset_tag_t) and software (based on cpu_info::ci_schedstate.spc_flags) perspectives. ==> Fall back to the primary CPU failing all else. To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/arch/alpha/include/pci_machdep.h cvs rdiff -u -r1.26 -r1.27 src/sys/arch/alpha/pci/pci_machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.