All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] Fix some free dereferences
@ 2009-05-06 16:12 Alan Cox
  2009-05-06 16:13 ` [PATCH 1/2] dereferencing freed in saa5246a.c Alan Cox
  2009-05-06 16:13 ` [PATCH 2/2] dereferencing freed in saa5249.c Alan Cox
  0 siblings, 2 replies; 5+ messages in thread
From: Alan Cox @ 2009-05-06 16:12 UTC (permalink / raw)
  To: torvalds, mchehab, linux-kernel

---

Dan Carpenter (2):
      dereferencing freed in saa5249.c
      dereferencing freed in saa5246a.c


 drivers/media/video/saa5246a.c |    3 +--
 drivers/media/video/saa5249.c  |    4 ++--
 2 files changed, 3 insertions(+), 4 deletions(-)

-- 
Signature

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/2] dereferencing freed in saa5246a.c
  2009-05-06 16:12 [PATCH 0/2] Fix some free dereferences Alan Cox
@ 2009-05-06 16:13 ` Alan Cox
  2009-05-06 20:30   ` Mauro Carvalho Chehab
  2009-05-06 16:13 ` [PATCH 2/2] dereferencing freed in saa5249.c Alan Cox
  1 sibling, 1 reply; 5+ messages in thread
From: Alan Cox @ 2009-05-06 16:13 UTC (permalink / raw)
  To: torvalds, mchehab, linux-kernel

From: Dan Carpenter <error27@gmail.com>

I lowered the kfree(t) down a couple lines and removed the superflous
"t->vdev = NULL;"

regards,
dan carpenter

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
---

 drivers/media/video/saa5246a.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)


diff --git a/drivers/media/video/saa5246a.c b/drivers/media/video/saa5246a.c
index da47b2f..155804b 100644
--- a/drivers/media/video/saa5246a.c
+++ b/drivers/media/video/saa5246a.c
@@ -1092,9 +1092,8 @@ static int saa5246a_probe(struct i2c_client *client,
 	/* Register it */
 	err = video_register_device(t->vdev, VFL_TYPE_VTX, -1);
 	if (err < 0) {
-		kfree(t);
 		video_device_release(t->vdev);
-		t->vdev = NULL;
+		kfree(t);
 		return err;
 	}
 	return 0;


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] dereferencing freed in saa5249.c
  2009-05-06 16:12 [PATCH 0/2] Fix some free dereferences Alan Cox
  2009-05-06 16:13 ` [PATCH 1/2] dereferencing freed in saa5246a.c Alan Cox
@ 2009-05-06 16:13 ` Alan Cox
  2009-05-06 20:31   ` Mauro Carvalho Chehab
  1 sibling, 1 reply; 5+ messages in thread
From: Alan Cox @ 2009-05-06 16:13 UTC (permalink / raw)
  To: torvalds, mchehab, linux-kernel

From: Dan Carpenter <error27@gmail.com>

I moved the kfree() down a couple lines.  t->vdev is going to be in freed
memory so there is no point setting it to NULL.  I added a kfree(t) on a
different error path.

regards,
dan carpenter

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
---

 drivers/media/video/saa5249.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)


diff --git a/drivers/media/video/saa5249.c b/drivers/media/video/saa5249.c
index 48b27fe..271d6e9 100644
--- a/drivers/media/video/saa5249.c
+++ b/drivers/media/video/saa5249.c
@@ -598,6 +598,7 @@ static int saa5249_probe(struct i2c_client *client,
 	/* Now create a video4linux device */
 	t->vdev = video_device_alloc();
 	if (t->vdev == NULL) {
+		kfree(t);
 		kfree(client);
 		return -ENOMEM;
 	}
@@ -617,9 +618,8 @@ static int saa5249_probe(struct i2c_client *client,
 	/* Register it */
 	err = video_register_device(t->vdev, VFL_TYPE_VTX, -1);
 	if (err < 0) {
-		kfree(t);
 		video_device_release(t->vdev);
-		t->vdev = NULL;
+		kfree(t);
 		return err;
 	}
 	return 0;


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] dereferencing freed in saa5246a.c
  2009-05-06 16:13 ` [PATCH 1/2] dereferencing freed in saa5246a.c Alan Cox
@ 2009-05-06 20:30   ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2009-05-06 20:30 UTC (permalink / raw)
  To: Alan Cox; +Cc: torvalds, linux-kernel

Em Wed, 06 May 2009 17:13:33 +0100
Alan Cox <alan@lxorguk.ukuu.org.uk> escreveu:

> From: Dan Carpenter <error27@gmail.com>
> 
> I lowered the kfree(t) down a couple lines and removed the superflous
> "t->vdev = NULL;"
> 
> regards,
> dan carpenter
> 
> Signed-off-by: Dan Carpenter <error27@gmail.com>
> Signed-off-by: Alan Cox <alan@linux.intel.com>
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com>

> ---
> 
>  drivers/media/video/saa5246a.c |    3 +--
>  1 files changed, 1 insertions(+), 2 deletions(-)
> 
> 
> diff --git a/drivers/media/video/saa5246a.c b/drivers/media/video/saa5246a.c
> index da47b2f..155804b 100644
> --- a/drivers/media/video/saa5246a.c
> +++ b/drivers/media/video/saa5246a.c
> @@ -1092,9 +1092,8 @@ static int saa5246a_probe(struct i2c_client *client,
>  	/* Register it */
>  	err = video_register_device(t->vdev, VFL_TYPE_VTX, -1);
>  	if (err < 0) {
> -		kfree(t);
>  		video_device_release(t->vdev);
> -		t->vdev = NULL;
> +		kfree(t);
>  		return err;
>  	}
>  	return 0;
> 


-- 

Cheers,
Mauro

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] dereferencing freed in saa5249.c
  2009-05-06 16:13 ` [PATCH 2/2] dereferencing freed in saa5249.c Alan Cox
@ 2009-05-06 20:31   ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2009-05-06 20:31 UTC (permalink / raw)
  To: Alan Cox; +Cc: torvalds, linux-kernel

Em Wed, 06 May 2009 17:13:45 +0100
Alan Cox <alan@lxorguk.ukuu.org.uk> escreveu:

> From: Dan Carpenter <error27@gmail.com>
> 
> I moved the kfree() down a couple lines.  t->vdev is going to be in freed
> memory so there is no point setting it to NULL.  I added a kfree(t) on a
> different error path.
> 
> regards,
> dan carpenter
> 
> Signed-off-by: Dan Carpenter <error27@gmail.com>
> Signed-off-by: Alan Cox <alan@linux.intel.com>

Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com>

> ---
> 
>  drivers/media/video/saa5249.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> 
> diff --git a/drivers/media/video/saa5249.c b/drivers/media/video/saa5249.c
> index 48b27fe..271d6e9 100644
> --- a/drivers/media/video/saa5249.c
> +++ b/drivers/media/video/saa5249.c
> @@ -598,6 +598,7 @@ static int saa5249_probe(struct i2c_client *client,
>  	/* Now create a video4linux device */
>  	t->vdev = video_device_alloc();
>  	if (t->vdev == NULL) {
> +		kfree(t);
>  		kfree(client);
>  		return -ENOMEM;
>  	}
> @@ -617,9 +618,8 @@ static int saa5249_probe(struct i2c_client *client,
>  	/* Register it */
>  	err = video_register_device(t->vdev, VFL_TYPE_VTX, -1);
>  	if (err < 0) {
> -		kfree(t);
>  		video_device_release(t->vdev);
> -		t->vdev = NULL;
> +		kfree(t);
>  		return err;
>  	}
>  	return 0;
> 


-- 

Cheers,
Mauro

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-05-06 20:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-06 16:12 [PATCH 0/2] Fix some free dereferences Alan Cox
2009-05-06 16:13 ` [PATCH 1/2] dereferencing freed in saa5246a.c Alan Cox
2009-05-06 20:30   ` Mauro Carvalho Chehab
2009-05-06 16:13 ` [PATCH 2/2] dereferencing freed in saa5249.c Alan Cox
2009-05-06 20:31   ` Mauro Carvalho Chehab

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.