mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-02 09:16:41 +09:00
staging: mt7621-mmc: Fix memory leek in case of error in probe
If the base address is not successfully obtained in the probe function, then the mmc_host struct is not freed. Adding an exit for that case fixes the bug. Signed-off-by: Christian Lütke-Stetzkamp <christian@lkamp.de> Reviewed-by: NeilBrown <neil@brown.name> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
9673d9f6f4
commit
5ac36d9c96
@@ -2719,8 +2719,10 @@ static int msdc_drv_probe(struct platform_device *pdev)
|
||||
//BUG_ON((!hw) || (!mem) || (irq < 0)); /* --- by chhung */
|
||||
|
||||
base = devm_ioremap_resource(&pdev->dev, res);
|
||||
if (IS_ERR(base))
|
||||
return PTR_ERR(base);
|
||||
if (IS_ERR(base)) {
|
||||
ret = PTR_ERR(base);
|
||||
goto host_free;
|
||||
}
|
||||
|
||||
/* Set host parameters to mmc */
|
||||
mmc->ops = &mt_msdc_ops;
|
||||
@@ -2861,6 +2863,7 @@ release:
|
||||
if (mem)
|
||||
release_mem_region(mem->start, mem->end - mem->start + 1);
|
||||
|
||||
host_free:
|
||||
mmc_free_host(mmc);
|
||||
|
||||
return ret;
|
||||
|
||||
Reference in New Issue
Block a user