Keith Busch
01d5ccd341
x86/apic: Handle zero vector gracefully in clear_vector_irq()
...
commit 1bdb897039 upstream.
If x86_vector_alloc_irq() fails x86_vector_free_irqs() is invoked to cleanup
the already allocated vectors. This subsequently calls clear_vector_irq().
The failed irq has no vector assigned, which triggers the BUG_ON(!vector) in
clear_vector_irq().
We cannot suppress the call to x86_vector_free_irqs() for the failed
interrupt, because the other data related to this irq must be cleaned up as
well. So calling clear_vector_irq() with vector == 0 is legitimate.
Remove the BUG_ON and return if vector is zero,
[ tglx: Massaged changelog ]
Fixes: b5dc8e6c21 "x86/irq: Use hierarchical irqdomain to manage CPU interrupt vectors"
Signed-off-by: Keith Busch <keith.busch@intel.com >
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2016-05-04 14:48:49 -07:00
..
2016-03-09 15:34:52 -08:00
2016-05-04 14:48:49 -07:00
2016-05-04 14:48:40 -07:00
2015-11-12 09:34:58 +01:00
2015-04-14 14:37:47 -07:00
2015-09-03 21:27:47 +02:00
2015-05-06 11:15:53 +02:00
2015-07-06 15:23:28 +02:00
2015-05-06 11:15:53 +02:00
2015-07-29 15:44:58 +02:00
2015-05-05 20:48:02 +02:00
2015-06-08 23:43:38 +02:00
2015-11-03 21:05:40 -08:00
2014-12-13 12:42:51 -08:00
2015-06-16 14:12:34 -04:00
2015-08-25 09:59:19 +02:00
2015-07-20 18:57:20 +02:00
2015-10-12 09:43:11 +02:00
2015-07-02 10:30:48 -07:00
2015-04-13 13:23:34 -07:00
2015-02-23 18:37:13 +01:00
2015-04-13 13:23:34 -07:00
2015-09-30 21:54:40 +02:00
2015-10-13 21:45:56 +02:00
2015-10-21 11:17:32 +02:00
2015-07-31 10:23:35 +02:00
2015-10-22 15:44:24 -04:00
2015-02-04 12:10:42 +01:00
2015-07-06 14:53:13 +02:00
2015-10-21 11:22:12 +02:00
2015-11-07 10:45:02 +01:00
2015-10-21 11:17:32 +02:00
2015-08-04 10:16:55 +02:00
2015-06-07 15:57:42 +02:00
2015-08-10 11:40:30 +02:00
2015-11-07 10:37:37 +01:00
2016-04-12 09:08:38 -07:00
2015-09-16 15:47:51 +02:00
2015-10-01 11:08:56 +02:00
2015-11-23 09:44:58 +01:00
2016-03-03 15:07:31 -08:00
2015-08-06 00:14:59 +02:00
2015-08-03 11:34:12 +02:00
2015-09-08 12:41:25 -07:00
2015-09-28 10:13:31 +02:00
2015-06-24 09:36:49 -07:00
2015-10-01 15:06:42 +02:00
2015-09-14 12:10:50 +02:00
2015-11-06 11:10:03 +01:00
2014-12-16 14:08:17 +01:00
2015-06-23 14:07:26 -07:00
2015-09-10 13:29:01 -07:00
2015-11-19 11:07:49 +01:00
2015-04-03 15:26:15 +02:00
2015-04-24 15:36:55 +02:00
2015-07-31 10:23:35 +02:00
2015-07-06 15:23:26 +02:00
2015-06-03 10:07:35 +02:00
2015-05-11 09:52:09 +02:00
2015-09-22 22:40:28 +02:00
2015-11-06 17:50:42 -08:00
2015-06-11 08:28:38 +02:00
2015-04-11 13:08:53 +02:00
2015-11-30 09:10:33 -08:00
2015-10-06 17:08:18 +02:00
2016-04-12 09:08:38 -07:00
2015-10-31 09:50:25 +01:00
2015-07-07 10:59:05 +02:00
2015-04-27 15:49:30 +02:00
2015-10-21 11:17:32 +02:00
2016-01-31 11:28:54 -08:00
2015-03-07 11:12:43 +01:00
2015-04-01 13:17:39 +02:00
2015-12-19 21:35:13 +01:00
2015-11-23 10:39:49 +01:00
2015-07-06 15:28:55 +02:00
2015-12-05 18:52:14 +01:00
2015-08-13 10:12:52 +02:00
2015-11-25 23:17:48 +01:00
2015-08-18 09:39:47 +02:00
2015-03-31 10:01:17 +02:00
2015-03-06 23:05:39 +01:00
2015-03-23 11:14:17 +01:00
2015-01-22 21:45:07 +01:00
2015-07-20 18:57:20 +02:00
2015-07-06 15:23:29 +02:00
2015-09-14 12:22:00 +02:00
2015-07-06 15:23:29 +02:00
2015-10-20 10:30:52 +02:00
2015-07-31 10:38:06 +02:00
2015-11-07 10:45:02 +01:00
2015-09-05 09:01:16 +02:00
2015-09-10 13:29:01 -07:00
2015-06-16 14:12:41 -04:00
2015-06-23 13:41:24 -07:00
2015-06-07 15:57:42 +02:00