mmc: core: Detect card removal on I/O error
authorUlf Hansson <ulf.hansson@stericsson.com>
Mon, 6 Feb 2012 09:42:39 +0000 (10:42 +0100)
committerChris Ball <cjb@laptop.org>
Tue, 27 Mar 2012 16:19:58 +0000 (12:19 -0400)
commitf0cc9cf99326926fd76f77645c48d16d647802eb
tree62ad1c9e51cb27c797acaa5481d93a4306125bcd
parent885c3e800cf99db3391247776bfa2d262b21a72b
mmc: core: Detect card removal on I/O error

To prevent I/O as soon as possible at card removal, a new detect work is
re-scheduled without a delay to let a rescan remove the card device as
soon as possible.

Additionally, MMC_CAP2_DETECT_ON_ERR can now be used to handle "slowly"
removed cards that a scheduled detect work did not detect as removed.
To prevent further I/O requests for these lingering removed cards,
check if card has been removed and then schedule a detect work to
properly remove it.

Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Reviewed-by: Namjae Jeon <linkinjeon@gmail.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/core/core.c
include/linux/mmc/host.h