Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1420052 > unrolled thread

[patch] media: s5p-mfc: fix a couple double frees in probe

Started byDan Carpenter <dan.carpenter@oracle.com>
First post2016-06-11 22:00 +0200
Last post2016-06-13 15:50 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [patch] media: s5p-mfc: fix a couple double frees in probe Dan Carpenter <dan.carpenter@oracle.com> - 2016-06-11 22:00 +0200
    Re: [patch] media: s5p-mfc: fix a couple double frees in probe Javier Martinez Canillas <javier@dowhile0.org> - 2016-06-13 15:50 +0200

#1420052 — [patch] media: s5p-mfc: fix a couple double frees in probe

FromDan Carpenter <dan.carpenter@oracle.com>
Date2016-06-11 22:00 +0200
Subject[patch] media: s5p-mfc: fix a couple double frees in probe
Message-ID<rIXex-7fY-3@gated-at.bofh.it>
The extra calls to video_device_release() are a bug, we free these after
the goto.

Fixes: c974c436eaf4 ('s5p-mfc: Fix race between s5p_mfc_probe() and s5p_mfc_open()')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
This code would be easier to understand if it didn't use "come from"
style label names so that "goto release_dec;" would release dec etc
instead of "goto register_dec;"

diff --git a/drivers/media/platform/s5p-mfc/s5p_mfc.c b/drivers/media/platform/s5p-mfc/s5p_mfc.c
index 6ee620e..274b4f1 100644
--- a/drivers/media/platform/s5p-mfc/s5p_mfc.c
+++ b/drivers/media/platform/s5p-mfc/s5p_mfc.c
@@ -1266,7 +1266,6 @@ static int s5p_mfc_probe(struct platform_device *pdev)
 	ret = video_register_device(dev->vfd_dec, VFL_TYPE_GRABBER, 0);
 	if (ret) {
 		v4l2_err(&dev->v4l2_dev, "Failed to register video device\n");
-		video_device_release(dev->vfd_dec);
 		goto err_dec_reg;
 	}
 	v4l2_info(&dev->v4l2_dev,
@@ -1275,7 +1274,6 @@ static int s5p_mfc_probe(struct platform_device *pdev)
 	ret = video_register_device(dev->vfd_enc, VFL_TYPE_GRABBER, 0);
 	if (ret) {
 		v4l2_err(&dev->v4l2_dev, "Failed to register video device\n");
-		video_device_release(dev->vfd_enc);
 		goto err_enc_reg;
 	}
 	v4l2_info(&dev->v4l2_dev,

[toc] | [next] | [standalone]


#1420856

FromJavier Martinez Canillas <javier@dowhile0.org>
Date2016-06-13 15:50 +0200
Message-ID<rJApA-6Xi-25@gated-at.bofh.it>
In reply to#1420052
Hello Dan,

On Sat, Jun 11, 2016 at 3:56 PM, Dan Carpenter <dan.carpenter@oracle.com> wrote:
> The extra calls to video_device_release() are a bug, we free these after
> the goto.
>
> Fixes: c974c436eaf4 ('s5p-mfc: Fix race between s5p_mfc_probe() and s5p_mfc_open()')
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---

Thanks for the patch but Shuah already posted the same fix before:

https://lkml.org/lkml/2016/6/8/1210

Best regards,
Javier

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web