2012-10-03 12:41:11

by Peter Senna Tschudin

[permalink] [raw]
Subject: [PATCH 1/2] drivers/video/savage/savagefb_driver.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>


Signed-off-by: Peter Senna Tschudin <[email protected]>

---
drivers/video/savage/savagefb_driver.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/video/savage/savagefb_driver.c b/drivers/video/savage/savagefb_driver.c
index 0d0f52c..f4f53b0 100644
--- a/drivers/video/savage/savagefb_driver.c
+++ b/drivers/video/savage/savagefb_driver.c
@@ -2266,8 +2266,10 @@ static int __devinit savagefb_probe(struct pci_dev* dev,
lpitch = info->var.xres_virtual*((info->var.bits_per_pixel + 7) >> 3);
info->var.yres_virtual = info->fix.smem_len/lpitch;

- if (info->var.yres_virtual < info->var.yres)
+ if (info->var.yres_virtual < info->var.yres) {
+ err = -ENOMEM;
goto failed;
+ }

#if defined(CONFIG_FB_SAVAGE_ACCEL)
/*


Subject: Re: [PATCH 1/2] drivers/video/savage/savagefb_driver.c: fix error return code

On 10/03/2012 12:40 PM, Peter Senna Tschudin wrote:
> 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>
>
>
> Signed-off-by: Peter Senna Tschudin <[email protected]>

Applied.


Thanks,

Florian Tobias Schandinat


>
> ---
> drivers/video/savage/savagefb_driver.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/video/savage/savagefb_driver.c b/drivers/video/savage/savagefb_driver.c
> index 0d0f52c..f4f53b0 100644
> --- a/drivers/video/savage/savagefb_driver.c
> +++ b/drivers/video/savage/savagefb_driver.c
> @@ -2266,8 +2266,10 @@ static int __devinit savagefb_probe(struct pci_dev* dev,
> lpitch = info->var.xres_virtual*((info->var.bits_per_pixel + 7) >> 3);
> info->var.yres_virtual = info->fix.smem_len/lpitch;
>
> - if (info->var.yres_virtual < info->var.yres)
> + if (info->var.yres_virtual < info->var.yres) {
> + err = -ENOMEM;
> goto failed;
> + }
>
> #if defined(CONFIG_FB_SAVAGE_ACCEL)
> /*
>
>