Matthew Wilcox 0ca4b6b001 x86: Fix interrupt leak due to migration
When we migrate an interrupt from one CPU to another, we set the
move_in_progress flag and clean up the vectors later once they're not
being used.  If you're unlucky and call destroy_irq() before the vectors
become un-used, the move_in_progress flag is never cleared, which causes
the interrupt to become unusable.

This was discovered by Jesse Brandeburg for whom it manifested as an
MSI-X device refusing to use MSI-X mode when the driver was unloaded
and reloaded repeatedly.

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-11-20 13:17:40 -08:00
..
2008-10-31 09:31:38 +01:00
2008-10-16 16:53:14 +02:00
2008-10-16 16:53:13 +02:00
2008-10-16 09:24:41 -07:00
2008-10-16 16:53:13 +02:00
2008-11-16 10:05:07 +01:00
2008-09-29 10:04:53 +02:00
2008-10-13 10:21:10 +02:00
2008-04-26 17:35:47 +02:00
2008-07-22 14:35:57 +02:00
2008-10-16 16:53:30 +02:00
2008-10-16 16:53:30 +02:00
2008-10-21 15:54:40 +02:00
2008-10-16 16:53:15 +02:00
2008-10-12 12:37:32 +02:00
2008-07-26 12:00:04 -07:00
2008-10-12 12:37:32 +02:00
2008-10-23 00:11:07 -04:00
2008-10-20 08:52:41 -07:00
2008-08-25 10:59:18 +02:00
2008-07-16 12:15:17 -07:00
2008-07-26 16:31:35 +02:00
2008-07-22 14:35:57 +02:00
2008-10-22 22:55:23 -07:00
2008-07-22 14:35:57 +02:00
2008-11-08 17:05:38 +01:00
2008-10-16 16:53:13 +02:00
2008-10-16 16:53:15 +02:00
2008-07-22 14:35:57 +02:00
2008-10-16 16:52:59 +02:00
2008-10-16 16:53:15 +02:00
2008-10-29 08:02:28 +01:00
2008-10-22 07:31:28 +02:00