Files
linux-stable-mirror/include/linux
Thomas Gleixner 591d2fb02e genirq: Delegate irq affinity setting to the irq thread
irq_set_thread_affinity() calls set_cpus_allowed_ptr() which might
sleep, but irq_set_thread_affinity() is called with desc->lock held
and can be called from hard interrupt context as well. The code has
another bug as it does not hold a ref on the task struct as required
by set_cpus_allowed_ptr().

Just set the IRQTF_AFFINITY bit in action->thread_flags. The next time
the thread runs it migrates itself. Solves all of the above problems
nicely.

Add kerneldoc to irq_set_thread_affinity() while at it.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
LKML-Reference: <new-submission>
2009-07-21 14:35:07 +02:00
..
2009-06-22 16:56:22 -07:00
2009-06-30 18:56:00 -07:00
2009-07-12 12:22:34 -07:00
2009-06-30 18:55:58 -07:00
2009-06-22 10:12:35 +01:00
2009-07-12 12:22:34 -07:00
2009-07-12 13:02:10 -07:00
2009-06-22 10:12:30 +01:00
2009-06-22 10:12:35 +01:00
2009-07-08 09:18:05 -07:00
2009-06-24 08:17:04 -04:00
2009-06-30 18:56:00 -07:00
2009-06-24 08:15:27 -04:00
2009-06-30 20:12:24 +02:00
2009-07-12 12:22:34 -07:00
2009-06-29 08:59:10 +10:00
2009-06-22 10:12:35 +01:00
2009-06-23 20:21:39 +01:00
2009-07-17 21:47:44 +09:30
2009-06-25 11:22:13 -07:00
2009-07-08 09:31:56 -07:00
2009-06-29 12:14:51 -07:00
2009-06-30 18:55:59 -07:00
2009-07-12 12:22:34 -07:00
2009-06-24 08:17:06 -04:00
2009-07-10 14:24:05 -07:00
2009-06-24 08:17:06 -04:00
2009-06-23 12:50:05 -07:00
2009-07-06 13:57:03 -07:00
2009-07-12 15:16:39 -07:00
2009-07-17 21:47:47 +09:30