diff --git a/[refs] b/[refs] index 21626dfe1ea1..716c0e35a39c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 807e8e40673d9628fa7dcdd14423424b4ee5f43b +refs/heads/master: c584179828b268152f5ff82dab529a2c095b09ac diff --git a/trunk/drivers/mmc/core/core.c b/trunk/drivers/mmc/core/core.c index 198f70bad908..4b1d8fb04e9b 100644 --- a/trunk/drivers/mmc/core/core.c +++ b/trunk/drivers/mmc/core/core.c @@ -1531,9 +1531,11 @@ void mmc_rescan(struct work_struct *work) && mmc_card_is_removable(host)) host->bus_ops->detect(host); + /* + * Let mmc_bus_put() free the bus/bus_ops if we've found that + * the card is no longer present. + */ mmc_bus_put(host); - - mmc_bus_get(host); /* if there still is a card present, stop here */