Skip to content
Commit fe200ae4 authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

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: default avatarThomas Gleixner <tglx@linutronix.de>
parent d05c65ff
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment