summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDinghao Liu <dinghao.liu@zju.edu.cn>2020-08-26 11:26:04 +0200
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2020-09-26 10:15:39 +0200
commit21d387b8d372f859d9e87fdcc7c3b4a432737f4d (patch)
tree5346b26de46e1fe3742032ce85721001e069ca8f
parent057e212eae72f8a2741310fa03f1f522cfe36187 (diff)
downloadlwn-21d387b8d372f859d9e87fdcc7c3b4a432737f4d.tar.gz
lwn-21d387b8d372f859d9e87fdcc7c3b4a432737f4d.zip
media: mx2_emmaprp: Fix memleak in emmaprp_probe
When platform_get_irq() fails, we should release vfd and unregister pcdev->v4l2_dev just like the subsequent error paths. Fixes: d4e192cc44914 ("media: mx2_emmaprp: Check for platform_get_irq() error") Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> Reviewed-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
-rw-r--r--drivers/media/platform/mx2_emmaprp.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/media/platform/mx2_emmaprp.c b/drivers/media/platform/mx2_emmaprp.c
index df78df59da45..08a5473b5610 100644
--- a/drivers/media/platform/mx2_emmaprp.c
+++ b/drivers/media/platform/mx2_emmaprp.c
@@ -852,8 +852,11 @@ static int emmaprp_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, pcdev);
irq = platform_get_irq(pdev, 0);
- if (irq < 0)
- return irq;
+ if (irq < 0) {
+ ret = irq;
+ goto rel_vdev;
+ }
+
ret = devm_request_irq(&pdev->dev, irq, emmaprp_irq, 0,
dev_name(&pdev->dev), pcdev);
if (ret)