[PATCH 14/14] drivers/spi/spi-s3c24xx.c: fix error return code

Subsystems: arm/samsung s3c, s5p and exynos arm architectures, samsung spi drivers, spi subsystem, the rest

STALE5094d

Revision v1 of 3 in this series.

5 messages, 3 authors, 2012-08-22 · open the first message on its own page

[PATCH 14/14] drivers/spi/spi-s3c24xx.c: fix error return code

From: Julia Lawall <hidden>
Date: 2012-08-19 08:45:54

From: Julia Lawall <redacted>

Initialize return variable before exiting on an error path.

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

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

// </smpl>

Signed-off-by: Julia Lawall <redacted>

---
Perhaps -EINVAL is not the right value in this case.

 drivers/spi/spi-s3c24xx.c |    1 +
 1 file changed, 1 insertion(+)
diff --git a/drivers/spi/spi-s3c24xx.c b/drivers/spi/spi-s3c24xx.c
index 8ee7d79..a2a080b 100644
--- a/drivers/spi/spi-s3c24xx.c
+++ b/drivers/spi/spi-s3c24xx.c
@@ -611,6 +611,7 @@ static int __devinit s3c24xx_spi_probe(struct platform_device *pdev)
 	if (!pdata->set_cs) {
 		if (pdata->pin_cs < 0) {
 			dev_err(&pdev->dev, "No chipselect pin\n");
+			err = -EINVAL;
 			goto err_register;
 		}
 

RE: [PATCH 14/14] drivers/spi/spi-s3c24xx.c: fix error return code

From: Kukjin Kim <hidden>
Date: 2012-08-22 09:38:41

Julia Lawall wrote:
From: Julia Lawall <redacted>

Initialize return variable before exiting on an error path.

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

// <smpl>
(
if at p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret at p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}

// </smpl>

Signed-off-by: Julia Lawall <redacted>
Acked-by: Kukjin Kim <redacted>

(Cc'ed Mark Brown who is handling spi for a moment)
---
Perhaps -EINVAL is not the right value in this case.
Well, if (pin_cs < 0) is true, it is really invalid value. So I think, it
makes sense :-)

Thanks.

Best regards,
Kgene.
--
Kukjin Kim [off-list ref], Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
quoted hunk
 drivers/spi/spi-s3c24xx.c |    1 +
 1 file changed, 1 insertion(+)
diff --git a/drivers/spi/spi-s3c24xx.c b/drivers/spi/spi-s3c24xx.c
index 8ee7d79..a2a080b 100644
--- a/drivers/spi/spi-s3c24xx.c
+++ b/drivers/spi/spi-s3c24xx.c
@@ -611,6 +611,7 @@ static int __devinit s3c24xx_spi_probe(struct
platform_device *pdev)
 	if (!pdata->set_cs) {
 		if (pdata->pin_cs < 0) {
 			dev_err(&pdev->dev, "No chipselect pin\n");
+			err = -EINVAL;
 			goto err_register;
 		}

Re: [PATCH 14/14] drivers/spi/spi-s3c24xx.c: fix error return code

From: Mark Brown <hidden>
Date: 2012-08-22 11:40:21

On Wed, Aug 22, 2012 at 06:38:36PM +0900, Kukjin Kim wrote:
Julia Lawall wrote:
quoted
Signed-off-by: Julia Lawall <redacted>
Acked-by: Kukjin Kim <redacted>
(Cc'ed Mark Brown who is handling spi for a moment)
Please resend the patch to me so I can apply this.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120822/d8403bd2/attachment.sig>

Re: [PATCH 14/14] drivers/spi/spi-s3c24xx.c: fix error return code

From: Julia Lawall <hidden>
Date: 2012-08-22 11:42:53

From: Julia Lawall <redacted>

Initialize return variable before exiting on an error path.

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

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

// </smpl>

Signed-off-by: Julia Lawall <redacted>

---
Perhaps -EINVAL is not the right value in this case.

 drivers/spi/spi-s3c24xx.c |    1 +
 1 file changed, 1 insertion(+)
diff --git a/drivers/spi/spi-s3c24xx.c b/drivers/spi/spi-s3c24xx.c
index 8ee7d79..a2a080b 100644
--- a/drivers/spi/spi-s3c24xx.c
+++ b/drivers/spi/spi-s3c24xx.c
@@ -611,6 +611,7 @@ static int __devinit s3c24xx_spi_probe(struct platform_device *pdev)
 	if (!pdata->set_cs) {
 		if (pdata->pin_cs < 0) {
 			dev_err(&pdev->dev, "No chipselect pin\n");
+			err = -EINVAL;
 			goto err_register;
 		}

Re: [PATCH 14/14] drivers/spi/spi-s3c24xx.c: fix error return code

From: Mark Brown <hidden>
Date: 2012-08-22 17:00:29

On Wed, Aug 22, 2012 at 01:42:47PM +0200, Julia Lawall wrote:
From: Julia Lawall <redacted>

Initialize return variable before exiting on an error path.
Applied, thanks.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120822/a09091e8/attachment.sig>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help