diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index e08aa352bd5066b9fc2831c48d97844b705c0b95..3208890b10b389afd8cf08e5874cc865a1a9e817 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -260,6 +260,8 @@ void mmc_claim_host(struct mmc_host *host) DECLARE_WAITQUEUE(wait, current); unsigned long flags; + might_sleep(); + add_wait_queue(&host->wq, &wait); spin_lock_irqsave(&host->lock, flags); while (1) {