mmc: alcor: Fix a resource leak in the error path for ->probe()
If devm_request_threaded_irq() fails, the allocated struct mmc_host needs to be freed via calling mmc_free_host(), so let's do that. Fixes: c5413ad815a6 ("mmc: add new Alcor Micro Cardreader SD/MMC driver") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://lore.kernel.org/r/20200426202355.43055-1-christophe.jaillet@wanadoo.fr Cc: stable@vger.kernel.org Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
committed by
Ulf Hansson
parent
282ede76e4
commit
7c277dd2b0
@ -1104,7 +1104,7 @@ static int alcor_pci_sdmmc_drv_probe(struct platform_device *pdev)
|
||||
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev, "Failed to get irq for data line\n");
|
||||
return ret;
|
||||
goto free_host;
|
||||
}
|
||||
|
||||
mutex_init(&host->cmd_mutex);
|
||||
@ -1116,6 +1116,10 @@ static int alcor_pci_sdmmc_drv_probe(struct platform_device *pdev)
|
||||
dev_set_drvdata(&pdev->dev, host);
|
||||
mmc_add_host(mmc);
|
||||
return 0;
|
||||
|
||||
free_host:
|
||||
mmc_free_host(mmc);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int alcor_pci_sdmmc_drv_remove(struct platform_device *pdev)
|
||||
|
Reference in New Issue
Block a user