2009-12-27 21:27:53

by Julia Lawall

[permalink] [raw]
Subject: [PATCH 4/5] drivers/net/can: Correct NULL test

From: Julia Lawall <[email protected]>

Test the just-allocated value for NULL rather than some other value.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
expression x,y;
statement S;
@@

x = \(kmalloc\|kcalloc\|kzalloc\)(...);
(
if ((x) == NULL) S
|
if (
- y
+ x
== NULL)
S
)
// </smpl>

Signed-off-by: Julia Lawall <[email protected]>

---
drivers/net/can/mcp251x.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff -u -p a/drivers/net/can/mcp251x.c b/drivers/net/can/mcp251x.c
--- a/drivers/net/can/mcp251x.c
+++ b/drivers/net/can/mcp251x.c
@@ -990,7 +990,7 @@ static int __devinit mcp251x_can_probe(s
goto error_tx_buf;
}
priv->spi_rx_buf = kmalloc(SPI_TRANSFER_BUF_LEN, GFP_KERNEL);
- if (!priv->spi_tx_buf) {
+ if (!priv->spi_rx_buf) {
ret = -ENOMEM;
goto error_rx_buf;
}


2009-12-28 13:50:08

by Oliver Hartkopp

[permalink] [raw]
Subject: Re: [PATCH 4/5] drivers/net/can: Correct NULL test

Julia Lawall wrote:
> From: Julia Lawall <[email protected]>

Thanks Julia!

I added Christian Pellegrin who is the author of this driver in CC.

An obvious copy/paste error :-)

Regards,
Oliver

Acked-by: Oliver Hartkopp <[email protected]>

>
> Test the just-allocated value for NULL rather than some other value.
>
> The semantic patch that makes this change is as follows:
> (http://coccinelle.lip6.fr/)
>
> // <smpl>
> @@
> expression x,y;
> statement S;
> @@
>
> x = \(kmalloc\|kcalloc\|kzalloc\)(...);
> (
> if ((x) == NULL) S
> |
> if (
> - y
> + x
> == NULL)
> S
> )
> // </smpl>
>
> Signed-off-by: Julia Lawall <[email protected]>
>
> ---
> drivers/net/can/mcp251x.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff -u -p a/drivers/net/can/mcp251x.c b/drivers/net/can/mcp251x.c
> --- a/drivers/net/can/mcp251x.c
> +++ b/drivers/net/can/mcp251x.c
> @@ -990,7 +990,7 @@ static int __devinit mcp251x_can_probe(s
> goto error_tx_buf;
> }
> priv->spi_rx_buf = kmalloc(SPI_TRANSFER_BUF_LEN, GFP_KERNEL);
> - if (!priv->spi_tx_buf) {
> + if (!priv->spi_rx_buf) {
> ret = -ENOMEM;
> goto error_rx_buf;
> }
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

2009-12-29 09:43:13

by christian pellegrin

[permalink] [raw]
Subject: Re: [PATCH 4/5] drivers/net/can: Correct NULL test

On Mon, Dec 28, 2009 at 2:49 PM, Oliver Hartkopp <[email protected]> wrote:
> Julia Lawall wrote:
>> From: Julia Lawall <[email protected]>
>
> Thanks Julia!
>
> I added Christian Pellegrin who is the author of this driver in CC.
>
> An obvious copy/paste error :-)
>

yes, exactly that: copy & paste is among the sweetest evils out there.
I'll try the semantic checker myself next time. Thanks!



--
Christian Pellegrin, see http://www.evolware.org/chri/
"Real Programmers don't play tennis, or any other sport which requires
you to change clothes. Mountain climbing is OK, and Real Programmers
wear their climbing boots to work in case a mountain should suddenly
spring up in the middle of the computer room."

2010-01-04 05:44:16

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 4/5] drivers/net/can: Correct NULL test

From: Julia Lawall <[email protected]>
Date: Sun, 27 Dec 2009 22:27:44 +0100 (CET)

> From: Julia Lawall <[email protected]>
>
> Test the just-allocated value for NULL rather than some other value.
...
> Signed-off-by: Julia Lawall <[email protected]>

Applied.