mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-03-26 17:05:29 +00:00
As the block layer, since the conversion to blkmq, claims the host using a
context, a following nested call to mmc_claim_host(), which isn't using a
context, may hang.
Calling mmc_interrupt_hpi() and mmc_read_bkops_status() via the mmc block
layer, may suffer from this problem, as these functions are calling
mmc_claim|release_host().
Let's fix the problem by removing the calls to mmc_claim|release_host()
from the above mentioned functions and instead make the callers responsible
of claiming/releasing the host. As a matter of fact, the existing callers
already deals with it.
Fixes:
|
||
---|---|---|
.. | ||
block.c | ||
block.h | ||
bus.c | ||
bus.h | ||
card.h | ||
core.c | ||
core.h | ||
debugfs.c | ||
host.c | ||
host.h | ||
Kconfig | ||
Makefile | ||
mmc.c | ||
mmc_ops.c | ||
mmc_ops.h | ||
mmc_test.c | ||
pwrseq.c | ||
pwrseq.h | ||
pwrseq_emmc.c | ||
pwrseq_sd8787.c | ||
pwrseq_simple.c | ||
queue.c | ||
queue.h | ||
quirks.h | ||
sd.c | ||
sd.h | ||
sd_ops.c | ||
sd_ops.h | ||
sdio.c | ||
sdio_bus.c | ||
sdio_bus.h | ||
sdio_cis.c | ||
sdio_cis.h | ||
sdio_io.c | ||
sdio_irq.c | ||
sdio_ops.c | ||
sdio_ops.h | ||
sdio_uart.c | ||
slot-gpio.c | ||
slot-gpio.h |