]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
mmc: core: Prevent processing SDIO IRQs when the card is suspended
authorUlf Hansson <ulf.hansson@linaro.org>
Tue, 18 Jun 2019 12:05:17 +0000 (14:05 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 25 Jun 2019 03:35:53 +0000 (11:35 +0800)
commit98467b8fda414f5340a1ac6c55297f4e6932933e
tree97773996e1f2565c9db716249b764f6794e20e3a
parent0349dbebbb0becda11953b3f633528d68780bc7e
mmc: core: Prevent processing SDIO IRQs when the card is suspended

commit 83293386bc95cf5e9f0c0175794455835bd1cb4a upstream.

Processing of SDIO IRQs must obviously be prevented while the card is
system suspended, otherwise we may end up trying to communicate with an
uninitialized SDIO card.

Reports throughout the years shows that this is not only a theoretical
problem, but a real issue. So, let's finally fix this problem, by keeping
track of the state for the card and bail out before processing the SDIO
IRQ, in case the card is suspended.

Cc: stable@vger.kernel.org
Reported-by: Douglas Anderson <dianders@chromium.org>
Tested-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mmc/core/sdio.c
drivers/mmc/core/sdio_irq.c