kernel_optimize_test/kernel/irq
Thomas Gleixner 45ddcecbfa genirq: Use affinity hint in irqdesc allocation
Use the affinity hint in the irqdesc allocator. The hint is used to determine
the node for the allocation and to set the affinity of the interrupt.

If multiple interrupts are allocated (multi-MSI) then the allocator iterates
over the cpumask and for each set cpu it allocates on their node and sets the
initial affinity to that cpu.

If a single interrupt is allocated (MSI-X) then the allocator uses the first
cpu in the mask to compute the allocation node and uses the mask for the
initial affinity setting.

Interrupts set up this way are marked with the AFFINITY_MANAGED flag to
prevent userspace from messing with their affinity settings.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Christoph Hellwig <hch@lst.de>
Cc: linux-block@vger.kernel.org
Cc: linux-pci@vger.kernel.org
Cc: linux-nvme@lists.infradead.org
Cc: axboe@fb.com
Cc: agordeev@redhat.com
Link: http://lkml.kernel.org/r/1467621574-8277-5-git-send-email-hch@lst.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2016-07-04 12:25:13 +02:00
..
autoprobe.c
chip.c genirq: Export IRQ functions for module use 2016-03-10 16:00:35 +01:00
cpuhotplug.c genirq: Make the cpuhotplug migration code less noisy 2015-10-22 14:34:57 +02:00
debug.h
devres.c
dummychip.c
generic-chip.c
handle.c genirq: Use a common macro to go through the actions list 2016-02-15 00:07:34 +01:00
internals.h genirq: Introduce IRQD_AFFINITY_MANAGED flag 2016-07-04 12:25:13 +02:00
ipi.c genirq: Add affinity hint to irq allocation 2016-07-04 12:25:13 +02:00
irqdesc.c genirq: Use affinity hint in irqdesc allocation 2016-07-04 12:25:13 +02:00
irqdomain.c genirq: Add affinity hint to irq allocation 2016-07-04 12:25:13 +02:00
Kconfig genirq: Add GENERIC_IRQ_IPI Kconfig symbol 2016-02-25 10:56:55 +01:00
Makefile genirq: Add a new generic IPI reservation code to irq core 2016-02-25 10:56:56 +01:00
manage.c genirq: Add affinity hint to irq allocation 2016-07-04 12:25:13 +02:00
migration.c
msi.c genirq: Add affinity hint to irq allocation 2016-07-04 12:25:13 +02:00
pm.c Merge branches 'irq-urgent-for-linus' and 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-11-15 09:30:48 -08:00
proc.c genirq: Introduce IRQD_AFFINITY_MANAGED flag 2016-07-04 12:25:13 +02:00
resend.c
settings.h genirq: Add flag to force mask in disable_irq[_nosync]() 2015-10-11 11:33:42 +02:00
spurious.c genirq: Use a common macro to go through the actions list 2016-02-15 00:07:34 +01:00