sdio: make the IRQ thread more resilient in the presence of bad states
authorNicolas Pitre <nico@cam.org>
Wed, 3 Oct 2007 19:32:57 +0000 (15:32 -0400)
committerPierre Ossman <drzeus@drzeus.cx>
Sat, 6 Oct 2007 15:51:45 +0000 (17:51 +0200)
commit599473cf15a3fae78cbc3192cfb38ca04d5abc72
treecba3a1c236711d4fc267ef6272c93d9dcf6a08e8
parent3e01e4bcdd56209e70c39293e0c4c355d09364b8
sdio: make the IRQ thread more resilient in the presence of bad states

Currently we print a message about some bad states wrt function IRQ
handlers but return 0 from process_sdio_pending_irqs() nevertheless.
This can lead to an infinite loop as nothing might have cleared the
condition for the pending card interrupt from the host controller by
the time host->ops->enable_sdio_irq(host, 1) is called.

Signed-off-by: Nicolas Pitre <nico@marvell.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
drivers/mmc/core/sdio_irq.c