linux-stable/kernel/irq
Peter P Waskiewicz Jr e7a297b0d7 genirq: Add CPU mask affinity hint
This patch adds a cpumask affinity hint to the irq_desc structure,
along with a registration function and a read-only proc entry for each
interrupt.

This affinity_hint handle for each interrupt can be used by underlying
drivers that need a better mechanism to control interrupt affinity.
The underlying driver can register a cpumask for the interrupt, which
will allow the driver to provide the CPU mask for the interrupt to
anything that requests it.  The intent is to extend the userspace
daemon, irqbalance, to help hint to it a preferred CPU mask to balance
the interrupt into.

[ tglx: Fixed compile warnings, added WARN_ON, made SMP only ]

Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Cc: davem@davemloft.net
Cc: arjan@linux.jf.intel.com
Cc: bhutchings@solarflare.com
LKML-Reference: <20100430214445.3992.41647.stgit@ppwaskie-hc2.jf.intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2010-05-03 11:50:57 +02:00
..
autoprobe.c genirq: Convert irq_desc.lock to raw_spinlock 2009-12-14 23:55:33 +01:00
chip.c Merge branch 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-26 15:09:06 -07:00
devres.c devres/irq: Fix devm_irq_match comment 2010-02-11 16:01:02 +01:00
handle.c genirq: Run irq handlers with interrupts disabled 2010-04-13 16:36:40 +02:00
internals.h sparseirq: Change irq_desc_ptrs to static 2010-02-17 17:27:03 -08:00
Makefile x86/irq: use move_irq_desc() in create_irq_nr() 2009-05-01 19:01:12 +02:00
manage.c genirq: Add CPU mask affinity hint 2010-05-03 11:50:57 +02:00
migration.c genirq: Convert irq_desc.lock to raw_spinlock 2009-12-14 23:55:33 +01:00
numa_migrate.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pm.c genirq: Convert irq_desc.lock to raw_spinlock 2009-12-14 23:55:33 +01:00
proc.c genirq: Add CPU mask affinity hint 2010-05-03 11:50:57 +02:00
resend.c irq: Remove superfluous NULL pointer check in check_irq_resend() 2009-08-09 12:44:29 +02:00
spurious.c genirq: Convert irq_desc.lock to raw_spinlock 2009-12-14 23:55:33 +01:00