Skip to contentSkip to conversation

drivers/media/platform/soc_camera/mx2_camera.c: fix error return code

PATCH Applied Peter Senna Tschudin 3 participants 4 messages Sep 6, 2012 – Sep 24, 2012

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 2/14 drivers/media/platform/soc_camera/mx2_camera.c: fix error return code

From: Peter Senna Tschudin <[email protected]>

Convert a nonnegative error return code to a negative one, as returned elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
{ ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1

    when != &ret

*if(...)
{
... when != ret = e2
when forall
return ret;
}

// </smpl>

---
 drivers/media/platform/soc_camera/mx2_camera.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
drivers/media/platform/soc_camera/mx2_camera.c +4 -1
index 256187f..f8884a7 100644
@@ -1800,13 +1800,16 @@ static int __devinit mx2_camera_probe(struct platform_device *pdev)
 
 		if (!res_emma || !irq_emma) {
 			dev_err(&pdev->dev, "no EMMA resources\n");
+			err = -ENODEV;
 			goto exit_free_irq;
 		}
 
 		pcdev->res_emma = res_emma;
 		pcdev->irq_emma = irq_emma;
-		if (mx27_camera_emma_init(pcdev))
+		if (mx27_camera_emma_init(pcdev)) {
+			err = -ENODEV;
 			goto exit_free_irq;
+		}
 	}
 
 	pcdev->soc_host.drv_name	= MX2_CAM_DRV_NAME,
#1 lore raw

PATCH 2/14 drivers/media/platform/soc_camera/mx2_camera.c: fix error return code

Please review,

Regards,
Mauro.

-------- Mensagem original --------
Assunto: [PATCH 2/14] drivers/media/platform/soc_camera/mx2_camera.c: fix error return code
Data: Thu, 6 Sep 2012 17:23:59 +0200
De: Peter Senna Tschudin <[email protected]>
Para: Mauro Carvalho Chehab <[email protected]>
CC: [email protected], [email protected], [email protected], [email protected]

From: Peter Senna Tschudin <[email protected]>

Convert a nonnegative error return code to a negative one, as returned elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
{ ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1

    when != &ret

*if(...)
{
... when != ret = e2
when forall
return ret;
}

// </smpl>

---
 drivers/media/platform/soc_camera/mx2_camera.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
drivers/media/platform/soc_camera/mx2_camera.c +4 -1
index 256187f..f8884a7 100644
@@ -1800,13 +1800,16 @@ static int __devinit mx2_camera_probe(struct platform_device *pdev)
 
 		if (!res_emma || !irq_emma) {
 			dev_err(&pdev->dev, "no EMMA resources\n");
+			err = -ENODEV;
 			goto exit_free_irq;
 		}
 
 		pcdev->res_emma = res_emma;
 		pcdev->irq_emma = irq_emma;
-		if (mx27_camera_emma_init(pcdev))
+		if (mx27_camera_emma_init(pcdev)) {
+			err = -ENODEV;
 			goto exit_free_irq;
+		}
 	}
 
 	pcdev->soc_host.drv_name	= MX2_CAM_DRV_NAME,

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#2 lore raw

Hi Peter

Thanks for the patch, but I think it can be improved:

Quoted 52 lines · Mauro Carvalho Chehab

Please review,

Regards,
Mauro.

-------- Mensagem original --------
Assunto: [PATCH 2/14] drivers/media/platform/soc_camera/mx2_camera.c: fix error return code
Data: Thu, 6 Sep 2012 17:23:59 +0200
De: Peter Senna Tschudin <[email protected]>
Para: Mauro Carvalho Chehab <[email protected]>
CC: [email protected], [email protected], [email protected], [email protected]

From: Peter Senna Tschudin <[email protected]>

Convert a nonnegative error return code to a negative one, as returned elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
{ ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1

    when != &ret

*if(...)
{
... when != ret = e2
when forall
return ret;
}

// </smpl>

---
 drivers/media/platform/soc_camera/mx2_camera.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
drivers/media/platform/soc_camera/mx2_camera.c +0 -0
index 256187f..f8884a7 100644
@@ -1800,13 +1800,16 @@ static int __devinit mx2_camera_probe(struct platform_device *pdev)
 
 		if (!res_emma || !irq_emma) {

drivers/media/platform/soc_camera/mx2_camera.c static int __devinit mx2_camera_probe(struct platform_device *pdev) · line 1810

Quoted 10 lines
drivers/media/platform/soc_camera/mx2_camera.c +3 -1
 			dev_err(&pdev->dev, "no EMMA resources\n");
+			err = -ENODEV;
 			goto exit_free_irq;
 		}
 
 		pcdev->res_emma = res_emma;
 		pcdev->irq_emma = irq_emma;
-		if (mx27_camera_emma_init(pcdev))
+		if (mx27_camera_emma_init(pcdev)) {
+			err = -ENODEV;

I think, propagating the error, returned by mx27_camera_emma_init() to the caller would be better, than using -ENODEV.

Thanks
Guennadi

Quoted 7 lines
drivers/media/platform/soc_camera/mx2_camera.c +1 -1
 			goto exit_free_irq;
+		}
 	}
 
 	pcdev->soc_host.drv_name	= MX2_CAM_DRV_NAME,
 
--
Quoted 6 lines

To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/

#3 lore raw

PATCH v2 2/14 drivers/media/platform/soc_camera/mx2_camera.c: fix error return code

From: Peter Senna Tschudin <[email protected]>

Convert a nonnegative error return code to a negative one, as returned elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
{ ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1

    when != &ret

*if(...)
{
... when != ret = e2
when forall
return ret;
}

// </smpl>

---
 drivers/media/platform/soc_camera/mx2_camera.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/media/platform/soc_camera/mx2_camera.c +3 -1
index 256187f..01d7c11 100644
@@ -1800,12 +1800,14 @@ static int __devinit mx2_camera_probe(struct platform_device *pdev)
 
 		if (!res_emma || !irq_emma) {
 			dev_err(&pdev->dev, "no EMMA resources\n");
+			err = -ENODEV;
 			goto exit_free_irq;
 		}
 
 		pcdev->res_emma = res_emma;
 		pcdev->irq_emma = irq_emma;
-		if (mx27_camera_emma_init(pcdev))
+		err = mx27_camera_emma_init(pcdev);
+		if (err)
 			goto exit_free_irq;
 	}
 
Signature · 1 line
1.7.11.4