From: Sang-Hun Lee Date: Fri, 18 Jul 2014 03:39:57 +0000 (-0400) Subject: mmc: tegra: unlock mutex before returning X-Git-Tag: daily-2014.08.28.0_rel-st8-r2.4-partner~5 X-Git-Url: http://rtime.felk.cvut.cz/gitweb/sojka/nv-tegra/linux-3.10.git/commitdiff_plain/b769e478e1c6076eec85ce8cc359aacf65d6db5d mmc: tegra: unlock mutex before returning To avoid hanging the entire system, unlock mutex lock before returning Bug 1526837 Change-Id: I523b5ad2ea7787ca780163e1e1db91c475c81ce1 Signed-off-by: Sang-Hun Lee Reviewed-on: http://git-master/r/439706 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Pavan Kunapuli Reviewed-by: Naveen Kumar Arepalli Reviewed-by: Mitch Luban --- diff --git a/drivers/mmc/host/sdhci-tegra.c b/drivers/mmc/host/sdhci-tegra.c index 84386f0dee9..b4abc3a0b6f 100644 --- a/drivers/mmc/host/sdhci-tegra.c +++ b/drivers/mmc/host/sdhci-tegra.c @@ -1434,6 +1434,7 @@ static void tegra_sdhci_set_clock(struct sdhci_host *sdhci, unsigned int clock) if (ret) { dev_err(mmc_dev(sdhci->mmc), "clock enable is failed, ret: %d\n", ret); + mutex_unlock(&tegra_host->set_clock_mutex); return; } tegra_host->clk_enabled = true; @@ -1449,6 +1450,7 @@ static void tegra_sdhci_set_clock(struct sdhci_host *sdhci, unsigned int clock) if (ret) { dev_err(mmc_dev(sdhci->mmc), "clock enable is failed, ret: %d\n", ret); + mutex_unlock(&tegra_host->set_clock_mutex); return; } tegra_host->is_sdmmc_emc_clk_on = true; @@ -1458,6 +1460,7 @@ static void tegra_sdhci_set_clock(struct sdhci_host *sdhci, unsigned int clock) if (ret) { dev_err(mmc_dev(sdhci->mmc), "clock enable is failed, ret: %d\n", ret); + mutex_unlock(&tegra_host->set_clock_mutex); return; } tegra_host->is_sdmmc_sclk_on = true;