netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [Patch] ariadne: fix possible null dereference
@ 2011-03-04 17:46 j223yang
  2011-03-04 18:31 ` Randy Dunlap
  0 siblings, 1 reply; 6+ messages in thread
From: j223yang @ 2011-03-04 17:46 UTC (permalink / raw)
  To: davem, netdev; +Cc: linux-kernel

This patch fixes bugzilla #13853:
https://bugzilla.kernel.org/show_bug.cgi?id=13853

The patch removes dereference of 'dev' after testing for NULL.
The source code ariadne.c uses spaces instead of tabs, so the patch
uses spaces too.

Signed-off-by: Jinqiu Yang<crindy646@gmail.com>
---
 drivers/net/ariadne.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c
--- a/drivers/net/ariadne.c
+++ b/drivers/net/ariadne.c
@@ -420,7 +420,7 @@ static inline void ariadne_reset(struct
 static irqreturn_t ariadne_interrupt(int irq, void *data)
 {
     struct net_device *dev = (struct net_device *)data;
-    volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr;
+    volatile struct Am79C960 *lance;
     struct ariadne_private *priv;
     int csr0, boguscnt;
     int handled = 0;
@@ -430,6 +430,7 @@ static irqreturn_t ariadne_interrupt(int
        return IRQ_NONE;
     }

+    lance = (struct Am79C960 *)dev->base_addr;
     lance->RAP = CSR0;                 /* PCnet-ISA Controller Status */

     if (!(lance->RDP & INTR))          /* Check if any interrupt has been */

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

* Re: [Patch] ariadne: fix possible null dereference
  2011-03-04 17:46 j223yang
@ 2011-03-04 18:31 ` Randy Dunlap
  0 siblings, 0 replies; 6+ messages in thread
From: Randy Dunlap @ 2011-03-04 18:31 UTC (permalink / raw)
  To: j223yang; +Cc: davem, netdev, linux-kernel

On Fri, 4 Mar 2011 12:46:26 -0500 j223yang@asset.uwaterloo.ca wrote:

> This patch fixes bugzilla #13853:
> https://bugzilla.kernel.org/show_bug.cgi?id=13853
> 
> The patch removes dereference of 'dev' after testing for NULL.
> The source code ariadne.c uses spaces instead of tabs, so the patch
> uses spaces too.

Sorry for the confusion here, but (while I agree with the fix in this
patch), this patch still does not apply cleanly.

If a line in the source code file uses spaces, then use spaces.
If a line in the source code file uses tabs, then use tabs.

You cannot exchange one for the other in your generated patch.
Using 'diff' creates the patch correctly, so I guess that your patch
generation tool still needs some work.

Please take your patch and test applying it:

> cd linux-2.6.38-rc7
> patch -p1 --dry-run < ~/tmp/ariadne.patch
patching file drivers/net/ariadne.c
Hunk #2 FAILED at 430.
1 out of 2 hunks FAILED -- saving rejects to file drivers/net/ariadne.c.rej


> Signed-off-by: Jinqiu Yang<crindy646@gmail.com>
> ---
>  drivers/net/ariadne.c |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c
> --- a/drivers/net/ariadne.c
> +++ b/drivers/net/ariadne.c
> @@ -420,7 +420,7 @@ static inline void ariadne_reset(struct
>  static irqreturn_t ariadne_interrupt(int irq, void *data)
>  {
>      struct net_device *dev = (struct net_device *)data;
> -    volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr;
> +    volatile struct Am79C960 *lance;
>      struct ariadne_private *priv;
>      int csr0, boguscnt;
>      int handled = 0;
> @@ -430,6 +430,7 @@ static irqreturn_t ariadne_interrupt(int
>         return IRQ_NONE;
>      }
> 
> +    lance = (struct Am79C960 *)dev->base_addr;
>      lance->RAP = CSR0;                 /* PCnet-ISA Controller Status */
> 
>      if (!(lance->RDP & INTR))          /* Check if any interrupt has been */
> 
> --

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

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

* [Patch] ariadne: fix possible null dereference
@ 2011-03-06  7:08 j223yang
  2011-03-06 19:11 ` Randy Dunlap
  0 siblings, 1 reply; 6+ messages in thread
From: j223yang @ 2011-03-06  7:08 UTC (permalink / raw)
  To: rdunlap; +Cc: netdev, linux-kernel

Hi Randy,
I have tested my patch, and it is ok now.
Could you please try patching again? Sorry for previous trouble.
Thank you!
 
Jinqiu
------------------------------------------------------
This patch fixes bugzilla #13853:
https://bugzilla.kernel.org/show_bug.cgi?id=13853

The patch removes dereference of 'dev' after testing for NULL.

Signed-off-by: Jinqiu Yang<crindy646@gmail.com>
---
 ariadne.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c
--- a/drivers/net/ariadne.c	2011-03-04 11:16:42.332164362 -0500
+++ b/drivers/net/ariadne.c	2011-03-05 21:11:52.949164759 -0500
@@ -420,7 +420,7 @@ static inline void ariadne_reset(struct 
 static irqreturn_t ariadne_interrupt(int irq, void *data)
 {
     struct net_device *dev = (struct net_device *)data;
-    volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr;
+    volatile struct Am79C960 *lance;
     struct ariadne_private *priv;
     int csr0, boguscnt;
     int handled = 0;
@@ -430,6 +430,7 @@ static irqreturn_t ariadne_interrupt(int
 	return IRQ_NONE;
     }
 
+    lance = (struct Am79C960 *)dev->base_addr;
     lance->RAP = CSR0;			/* PCnet-ISA Controller Status */
 
     if (!(lance->RDP & INTR))		/* Check if any interrupt has been */

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

* Re: [Patch] ariadne: fix possible null dereference
  2011-03-06  7:08 [Patch] ariadne: fix possible null dereference j223yang
@ 2011-03-06 19:11 ` Randy Dunlap
  2011-03-06 20:00   ` Geert Uytterhoeven
  0 siblings, 1 reply; 6+ messages in thread
From: Randy Dunlap @ 2011-03-06 19:11 UTC (permalink / raw)
  To: j223yang; +Cc: netdev, linux-kernel

On Sun, 6 Mar 2011 02:08:32 -0500 j223yang@asset.uwaterloo.ca wrote:

> Hi Randy,
> I have tested my patch, and it is ok now.
> Could you please try patching again? Sorry for previous trouble.
> Thank you!

Acked-by: Randy Dunlap <rdunlap@xenotime.net>

Thanks.

> Jinqiu
> ------------------------------------------------------
> This patch fixes bugzilla #13853:
> https://bugzilla.kernel.org/show_bug.cgi?id=13853
> 
> The patch removes dereference of 'dev' after testing for NULL.
> 
> Signed-off-by: Jinqiu Yang<crindy646@gmail.com>
> ---
>  ariadne.c |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c
> --- a/drivers/net/ariadne.c	2011-03-04 11:16:42.332164362 -0500
> +++ b/drivers/net/ariadne.c	2011-03-05 21:11:52.949164759 -0500
> @@ -420,7 +420,7 @@ static inline void ariadne_reset(struct 
>  static irqreturn_t ariadne_interrupt(int irq, void *data)
>  {
>      struct net_device *dev = (struct net_device *)data;
> -    volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr;
> +    volatile struct Am79C960 *lance;
>      struct ariadne_private *priv;
>      int csr0, boguscnt;
>      int handled = 0;
> @@ -430,6 +430,7 @@ static irqreturn_t ariadne_interrupt(int
>  	return IRQ_NONE;
>      }
>  
> +    lance = (struct Am79C960 *)dev->base_addr;
>      lance->RAP = CSR0;			/* PCnet-ISA Controller Status */
>  
>      if (!(lance->RDP & INTR))		/* Check if any interrupt has been */


---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

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

* Re: [Patch] ariadne: fix possible null dereference
  2011-03-06 19:11 ` Randy Dunlap
@ 2011-03-06 20:00   ` Geert Uytterhoeven
  2011-03-07  2:07     ` David Miller
  0 siblings, 1 reply; 6+ messages in thread
From: Geert Uytterhoeven @ 2011-03-06 20:00 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: j223yang, netdev, linux-kernel

On Sun, Mar 6, 2011 at 20:11, Randy Dunlap <rdunlap@xenotime.net> wrote:
> On Sun, 6 Mar 2011 02:08:32 -0500 j223yang@asset.uwaterloo.ca wrote:
>
>> Hi Randy,
>> I have tested my patch, and it is ok now.
>> Could you please try patching again? Sorry for previous trouble.
>> Thank you!
>
> Acked-by: Randy Dunlap <rdunlap@xenotime.net>

Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>

>> ------------------------------------------------------
>> This patch fixes bugzilla #13853:
>> https://bugzilla.kernel.org/show_bug.cgi?id=13853
>>
>> The patch removes dereference of 'dev' after testing for NULL.
>>
>> Signed-off-by: Jinqiu Yang<crindy646@gmail.com>
>> ---
>>  ariadne.c |    3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c
>> --- a/drivers/net/ariadne.c   2011-03-04 11:16:42.332164362 -0500
>> +++ b/drivers/net/ariadne.c   2011-03-05 21:11:52.949164759 -0500
>> @@ -420,7 +420,7 @@ static inline void ariadne_reset(struct
>>  static irqreturn_t ariadne_interrupt(int irq, void *data)
>>  {
>>      struct net_device *dev = (struct net_device *)data;
>> -    volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr;
>> +    volatile struct Am79C960 *lance;
>>      struct ariadne_private *priv;
>>      int csr0, boguscnt;
>>      int handled = 0;
>> @@ -430,6 +430,7 @@ static irqreturn_t ariadne_interrupt(int
>>       return IRQ_NONE;
>>      }
>>
>> +    lance = (struct Am79C960 *)dev->base_addr;
>>      lance->RAP = CSR0;                       /* PCnet-ISA Controller Status */
>>
>>      if (!(lance->RDP & INTR))                /* Check if any interrupt has been */

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

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

* Re: [Patch] ariadne: fix possible null dereference
  2011-03-06 20:00   ` Geert Uytterhoeven
@ 2011-03-07  2:07     ` David Miller
  0 siblings, 0 replies; 6+ messages in thread
From: David Miller @ 2011-03-07  2:07 UTC (permalink / raw)
  To: geert; +Cc: rdunlap, j223yang, netdev, linux-kernel

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: Sun, 6 Mar 2011 21:00:13 +0100

> On Sun, Mar 6, 2011 at 20:11, Randy Dunlap <rdunlap@xenotime.net> wrote:
>> On Sun, 6 Mar 2011 02:08:32 -0500 j223yang@asset.uwaterloo.ca wrote:
>>
>>> Hi Randy,
>>> I have tested my patch, and it is ok now.
>>> Could you please try patching again? Sorry for previous trouble.
>>> Thank you!
>>
>> Acked-by: Randy Dunlap <rdunlap@xenotime.net>
> 
> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>

People really don't actually read patches, I think.

Show me how dev can even be NULL here, it simply can't.

So the correct fix is to remove the dev==NULL check altogether.

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

end of thread, other threads:[~2011-03-07  2:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-06  7:08 [Patch] ariadne: fix possible null dereference j223yang
2011-03-06 19:11 ` Randy Dunlap
2011-03-06 20:00   ` Geert Uytterhoeven
2011-03-07  2:07     ` David Miller
  -- strict thread matches above, loose matches on Subject: below --
2011-03-04 17:46 j223yang
2011-03-04 18:31 ` Randy Dunlap

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).