+1
−0
+20
−6
+1
−10
+39
−12
Loading
Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more
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>