Thomas Gleixner
fe200ae48e
genirq: Mark polled irqs and defer the real handler
...
With the chip.end() function gone we might run into a situation where
a poll call runs and the real interrupt comes in, sees IRQ_INPROGRESS
and disables the line. That might be a perfect working one, which will
then be masked forever.
So mark them polled while the poll runs. When the real handler sees
IRQ_INPROGRESS it checks the poll flag and waits for the polling to
complete. Add the necessary amount of sanity checks to it to avoid
deadlocks.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2011-02-19 12:58:09 +01:00
..
2011-01-17 10:54:41 -08:00
2011-01-30 01:14:14 -08:00
2011-02-15 09:40:27 -08:00
2011-01-14 12:38:18 +01:00
2011-01-14 15:57:47 +09:00
2011-01-13 21:04:07 -05:00
2011-01-14 18:11:59 +03:00
2011-01-25 15:26:51 -05:00
2011-02-10 12:20:40 -08:00
2011-01-20 18:30:17 -08:00
2011-01-20 18:30:17 -08:00
2011-01-15 20:07:45 -05:00
2011-01-13 17:32:46 -08:00
2011-01-26 10:50:06 +10:00
2011-01-15 20:07:47 -05:00
2011-01-17 10:54:41 -08:00
2011-01-13 21:49:56 -08:00
2011-01-15 20:07:33 -05:00
2011-01-17 03:26:26 -05:00
2011-02-16 17:48:59 +01:00
2011-02-02 16:03:19 -08:00
2011-01-24 14:45:11 +10:30
2011-01-14 08:06:39 -08:00
2011-02-15 15:21:11 -08:00
2011-02-19 12:58:06 +01:00
2011-02-19 12:58:09 +01:00
2011-02-19 12:58:06 +01:00
2011-01-30 01:14:14 -08:00
2011-02-01 08:23:22 +10:00
2011-01-13 17:32:47 -08:00
2011-02-13 16:54:24 -08:00
2011-01-24 14:45:11 +10:30
2011-01-14 13:12:45 +00:00
2011-02-18 11:32:28 -08:00
2011-01-21 13:38:57 -08:00
2011-01-17 10:44:31 -06:00
2011-01-20 17:02:06 -08:00
2011-01-15 13:28:17 +02:00
2011-01-13 17:32:46 -08:00
2011-01-13 17:32:41 -08:00
2011-01-21 08:40:30 -08:00
2011-01-13 17:32:46 -08:00
2011-01-13 17:32:43 -08:00
2011-02-03 09:28:46 -05:00
2011-01-24 14:32:52 +10:30
2011-01-16 13:47:07 -05:00
2011-02-03 18:05:29 -08:00
2011-01-30 01:14:38 -08:00
2011-01-15 20:07:33 -05:00
2011-01-13 21:44:34 -08:00
2011-01-14 13:17:26 -08:00
2011-01-15 20:07:34 -05:00
2011-01-25 15:24:47 -05:00
2011-01-15 22:01:58 -07:00
2011-01-26 19:21:28 +01:00
2011-01-14 07:52:02 -08:00
2011-01-13 17:32:43 -08:00
2011-01-13 17:32:36 -08:00
2011-01-16 13:47:07 -05:00
2011-01-14 09:29:05 -08:00
2011-01-16 11:56:26 -08:00
2011-01-14 15:23:25 -08:00
2011-01-25 15:24:47 -05:00
2011-01-13 17:32:48 -08:00
2011-01-14 02:36:43 +00:00
2011-02-02 16:03:19 -08:00
2011-01-13 17:32:42 -08:00
2011-02-17 14:59:42 -08:00
2011-02-16 17:48:59 +01:00
2011-02-11 17:41:58 +11:00
2011-01-13 20:15:35 -08:00
2011-01-13 17:32:42 -08:00
2011-02-03 09:29:06 -05:00
2011-01-24 09:33:36 -08:00
2011-02-03 09:28:46 -05:00
2011-01-24 14:45:11 +10:30
2011-02-09 08:19:55 +10:30
2011-01-13 17:32:34 -08:00
2011-02-16 17:48:59 +01:00