Adrian Hunter
89f3c365f3
mmc: sdhci: Fix SDIO IRQ thread deadlock
...
Since commit c07a48c26519 ("mmc: sdhci: Remove finish_tasklet"), the IRQ
thread might be used to complete requests, but the IRQ thread is also used
to process SDIO card interrupts. This can cause a deadlock when the SDIO
processing tries to access the card since that would also require the IRQ
thread. Change SDHCI to use sdio_signal_irq() to schedule a work item
instead. That also requires implementing the ->ack_sdio_irq() mmc host op.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Fixes: c07a48c26519 ("mmc: sdhci: Remove finish_tasklet")
Reported-by: Brian Masney <masneyb@onstation.org>
Tested-by: Brian Masney <masneyb@onstation.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2019-05-28 22:02:05 +02:00
..
2019-05-24 17:36:47 +02:00
2019-05-24 11:03:26 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:03 +02:00
2019-05-24 17:27:11 +02:00
2019-05-15 08:46:44 -07:00
2019-05-24 17:37:53 +02:00
2019-05-05 19:34:00 +02:00
2019-05-16 09:19:14 -07:00
2019-05-21 11:28:39 +02:00
2019-05-26 08:30:16 -07:00
2019-05-21 11:28:47 +02:00
2019-05-21 11:28:40 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:02 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 12:33:38 -07:00
2019-05-25 10:11:23 -07:00
2019-05-24 17:27:11 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:12 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:01 +02:00
2019-05-24 14:31:58 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-04-13 09:36:35 -04:00
2019-05-24 17:39:02 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:01 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:47 +02:00
2019-05-21 12:33:38 -07:00
2019-05-24 17:36:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:40 +02:00
2019-05-24 17:37:53 +02:00
2019-05-24 17:37:52 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-25 10:11:23 -07:00
2019-05-24 17:39:03 +02:00
2019-05-24 17:36:45 +02:00
2019-05-28 09:53:54 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:39:02 +02:00
2019-05-28 22:02:05 +02:00
2019-05-24 17:39:00 +02:00
2019-05-24 14:31:58 -07:00
2019-05-24 17:39:03 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-25 10:11:23 -07:00
2019-05-24 16:02:14 -07:00
2019-05-21 10:50:46 +02:00
2019-05-13 08:52:37 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-14 10:30:10 -07:00
2019-05-21 10:50:46 +02:00
2019-05-22 08:36:16 -07:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:45 +02:00
2019-05-24 14:31:58 -07:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:39 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:40 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:01 +02:00
2019-05-20 15:02:08 -07:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:30:28 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-04-25 22:23:06 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:12 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-23 21:58:25 -07:00
2019-05-21 10:50:46 +02:00
2019-05-19 09:56:36 -07:00
2019-05-24 17:36:45 +02:00
2019-05-18 11:49:57 +09:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:47 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:00 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:00 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:37:53 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:37:51 +02:00
2019-05-21 10:50:46 +02:00
2019-04-25 21:33:37 +02:00
2019-04-25 21:33:37 +02:00