linux-stable/drivers/mmc/core
Adrian Hunter 6f00f191d5 mmc: block: Fix CQE recovery reset success
commit a051246b78 upstream.

The intention of the use of mmc_blk_reset_success() in
mmc_blk_cqe_recovery() was to prevent repeated resets when retrying and
getting the same error. However, that may not be the case - any amount
of time and I/O may pass before another recovery is needed, in which
case there would be no reason to deny it the opportunity to recover via
a reset if necessary. CQE recovery is expected seldom and failure to
recover (if the clear tasks command fails), even more seldom, so it is
better to allow the reset always, which can be done by calling
mmc_blk_reset_success() always.

Fixes: 1e8e55b670 ("mmc: block: Add CQE support")
Cc: stable@vger.kernel.org
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20220531171922.76080-1-adrian.hunter@intel.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-06-14 18:41:46 +02:00
..
block.c mmc: block: Fix CQE recovery reset success 2022-06-14 18:41:46 +02:00
block.h
bus.c mmc: core: use sysfs_emit() instead of sprintf() 2022-04-08 13:57:25 +02:00
bus.h mmc: core: use sysfs_emit() instead of sprintf() 2022-04-08 13:57:25 +02:00
card.h mmc: core: transplant ti,wl1251 quirks from to be retired omap_hsmmc 2021-12-14 21:35:24 +01:00
core.c mmc: core: Disable card detect during shutdown 2021-12-20 11:09:15 +01:00
core.h mmc: core: Disable card detect during shutdown 2021-12-20 11:09:15 +01:00
crypto.c blk-crypto: rename blk_keyslot_manager to blk_crypto_profile 2021-10-21 10:49:32 -06:00
crypto.h
debugfs.c
host.c mmc: host: Return an error when ->enable_sdio_irq() ops is missing 2022-04-08 13:58:46 +02:00
host.h mmc: host: factor out clearing the retune state 2021-08-24 10:15:28 +02:00
Kconfig mmc: pwrseq: add wilc1000_sdio dependency for pwrseq_sd8787 2021-08-24 16:59:38 +02:00
Makefile
mmc.c mmc: core: Set HS clock speed before sending HS CMD13 2022-05-12 12:32:16 +02:00
mmc_ops.c mmc: core: Fix busy polling for MMC_SEND_OP_COND again 2022-05-25 09:59:03 +02:00
mmc_ops.h mmc: core: Restore (almost) the busy polling for MMC_SEND_OP_COND 2022-03-07 11:47:39 +01:00
mmc_test.c include/linux/mm.h: move nr_free_buffer_pages from swap.h to mm.h 2021-11-06 13:30:43 -07:00
pwrseq.c
pwrseq.h
pwrseq_emmc.c
pwrseq_sd8787.c mmc: pwrseq: sd8787: fix compilation warning 2021-08-25 11:11:16 +02:00
pwrseq_simple.c mmc: pwrseq: Use bitmap_free() to free bitmap 2021-12-28 17:53:42 +01:00
queue.c mmc: core: Fix blk_status_t handling 2021-12-21 13:07:25 +01:00
queue.h
quirks.h staging: wfx: apply the necessary SDIO quirks for the Silabs WF200 2022-04-13 19:27:24 +02:00
regulator.c
sd.c mmc: core: use sysfs_emit() instead of sprintf() 2022-04-08 13:57:25 +02:00
sd.h
sd_ops.c
sd_ops.h
sdio.c mmc: core: use sysfs_emit() instead of sprintf() 2022-04-08 13:57:25 +02:00
sdio_bus.c mmc: core: use sysfs_emit() instead of sprintf() 2022-04-08 13:57:25 +02:00
sdio_bus.h
sdio_cis.c mmc: sdio: Print contents of unknown CIS tuples 2021-08-24 10:15:33 +02:00
sdio_cis.h
sdio_io.c
sdio_irq.c
sdio_ops.c
sdio_ops.h
sdio_uart.c tty: drop put_tty_driver 2021-07-27 12:17:21 +02:00
slot-gpio.c mmc: slot-gpio: Update default label when no con_id provided 2021-10-12 10:21:20 +02:00
slot-gpio.h