* [patch for 2.6.25? 2/3] smc91x driver: fix bug: print warning only in interrupt mode
@ 2008-04-09 0:31 akpm
0 siblings, 0 replies; 3+ messages in thread
From: akpm @ 2008-04-09 0:31 UTC (permalink / raw)
To: jeff; +Cc: netdev, akpm, sonic.zhang, cooloney
From: Sonic Zhang <sonic.zhang@analog.com>
http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: Jeff Garzik <jeff@garzik.org>
On Fri, 28 Mar 2008 21:45:02 -0400 Jeff Garzik <jeff@garzik.org> wrote:
> akpm@linux-foundation.org wrote:
> > From: Sonic Zhang <sonic.zhang@analog.com>
> >
> > http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956
> >
> > Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
> > Signed-off-by: Bryan Wu <cooloney@kernel.org>
> > Cc: Jeff Garzik <jeff@garzik.org>
> > Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> > ---
> >
> > drivers/net/smc91x.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff -puN drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode drivers/net/smc91x.c
> > --- a/drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode
> > +++ a/drivers/net/smc91x.c
> > @@ -1326,9 +1326,11 @@ static irqreturn_t smc_interrupt(int irq
> > SMC_SET_INT_MASK(lp, mask);
> > spin_unlock(&lp->lock);
> >
> > +#ifndef CONFIG_NET_POLL_CONTROLLER
> > if (timeout == MAX_IRQ_LOOPS)
> > PRINTK("%s: spurious interrupt (mask = 0x%02x)\n",
> > dev->name, mask);
> > +#endif
> > DBG(3, "%s: Interrupt done (%d loops)\n",
> > dev->name, MAX_IRQ_LOOPS - timeout);
>
> NAK
>
> Either this code is OK or it isn't. This patch simply hides a problem
> inside a configuration the developer probably doesn't use.
>
> What's the _real_ problem? Looking at the tracker, I'd guess that some
> events need to be masked, but are not?
>
> If the hardware is asserting events continually, the current code does
> the right thing -- keep processing interrupt events flagged, until (a)
> no more events asserted or (b) max loop count reached.
>
> So the question is to find out why you are hitting the timeout, and what
> to do about it.
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
drivers/net/smc91x.c | 2 ++
1 file changed, 2 insertions(+)
diff -puN drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode drivers/net/smc91x.c
--- a/drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode
+++ a/drivers/net/smc91x.c
@@ -1326,9 +1326,11 @@ static irqreturn_t smc_interrupt(int irq
SMC_SET_INT_MASK(lp, mask);
spin_unlock(&lp->lock);
+#ifndef CONFIG_NET_POLL_CONTROLLER
if (timeout == MAX_IRQ_LOOPS)
PRINTK("%s: spurious interrupt (mask = 0x%02x)\n",
dev->name, mask);
+#endif
DBG(3, "%s: Interrupt done (%d loops)\n",
dev->name, MAX_IRQ_LOOPS - timeout);
_
^ permalink raw reply [flat|nested] 3+ messages in thread
* [patch for 2.6.25? 2/3] smc91x driver: fix bug: print warning only in interrupt mode
@ 2008-04-11 4:30 akpm
2008-04-12 8:42 ` Jeff Garzik
0 siblings, 1 reply; 3+ messages in thread
From: akpm @ 2008-04-11 4:30 UTC (permalink / raw)
To: jeff; +Cc: netdev, akpm, sonic.zhang, cooloney
From: Sonic Zhang <sonic.zhang@analog.com>
http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: Jeff Garzik <jeff@garzik.org>
On Fri, 28 Mar 2008 21:45:02 -0400 Jeff Garzik <jeff@garzik.org> wrote:
> akpm@linux-foundation.org wrote:
> > From: Sonic Zhang <sonic.zhang@analog.com>
> >
> > http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956
> >
> > Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
> > Signed-off-by: Bryan Wu <cooloney@kernel.org>
> > Cc: Jeff Garzik <jeff@garzik.org>
> > Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> > ---
> >
> > drivers/net/smc91x.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff -puN drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode drivers/net/smc91x.c
> > --- a/drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode
> > +++ a/drivers/net/smc91x.c
> > @@ -1326,9 +1326,11 @@ static irqreturn_t smc_interrupt(int irq
> > SMC_SET_INT_MASK(lp, mask);
> > spin_unlock(&lp->lock);
> >
> > +#ifndef CONFIG_NET_POLL_CONTROLLER
> > if (timeout == MAX_IRQ_LOOPS)
> > PRINTK("%s: spurious interrupt (mask = 0x%02x)\n",
> > dev->name, mask);
> > +#endif
> > DBG(3, "%s: Interrupt done (%d loops)\n",
> > dev->name, MAX_IRQ_LOOPS - timeout);
>
> NAK
>
> Either this code is OK or it isn't. This patch simply hides a problem
> inside a configuration the developer probably doesn't use.
>
> What's the _real_ problem? Looking at the tracker, I'd guess that some
> events need to be masked, but are not?
>
> If the hardware is asserting events continually, the current code does
> the right thing -- keep processing interrupt events flagged, until (a)
> no more events asserted or (b) max loop count reached.
>
> So the question is to find out why you are hitting the timeout, and what
> to do about it.
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
drivers/net/smc91x.c | 2 ++
1 file changed, 2 insertions(+)
diff -puN drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode drivers/net/smc91x.c
--- a/drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode
+++ a/drivers/net/smc91x.c
@@ -1326,9 +1326,11 @@ static irqreturn_t smc_interrupt(int irq
SMC_SET_INT_MASK(lp, mask);
spin_unlock(&lp->lock);
+#ifndef CONFIG_NET_POLL_CONTROLLER
if (timeout == MAX_IRQ_LOOPS)
PRINTK("%s: spurious interrupt (mask = 0x%02x)\n",
dev->name, mask);
+#endif
DBG(3, "%s: Interrupt done (%d loops)\n",
dev->name, MAX_IRQ_LOOPS - timeout);
_
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [patch for 2.6.25? 2/3] smc91x driver: fix bug: print warning only in interrupt mode
2008-04-11 4:30 [patch for 2.6.25? 2/3] smc91x driver: fix bug: print warning only in interrupt mode akpm
@ 2008-04-12 8:42 ` Jeff Garzik
0 siblings, 0 replies; 3+ messages in thread
From: Jeff Garzik @ 2008-04-12 8:42 UTC (permalink / raw)
To: akpm; +Cc: netdev, sonic.zhang, cooloney
akpm@linux-foundation.org wrote:
> From: Sonic Zhang <sonic.zhang@analog.com>
>
> http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956
>
> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
> Signed-off-by: Bryan Wu <cooloney@kernel.org>
> Cc: Jeff Garzik <jeff@garzik.org>
>
> On Fri, 28 Mar 2008 21:45:02 -0400 Jeff Garzik <jeff@garzik.org> wrote:
>
>> akpm@linux-foundation.org wrote:
>>> From: Sonic Zhang <sonic.zhang@analog.com>
>>>
>>> http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956
>>>
>>> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
>>> Signed-off-by: Bryan Wu <cooloney@kernel.org>
>>> Cc: Jeff Garzik <jeff@garzik.org>
>>> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
>>> ---
>>>
>>> drivers/net/smc91x.c | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff -puN drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode drivers/net/smc91x.c
>>> --- a/drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode
>>> +++ a/drivers/net/smc91x.c
>>> @@ -1326,9 +1326,11 @@ static irqreturn_t smc_interrupt(int irq
>>> SMC_SET_INT_MASK(lp, mask);
>>> spin_unlock(&lp->lock);
>>>
>>> +#ifndef CONFIG_NET_POLL_CONTROLLER
>>> if (timeout == MAX_IRQ_LOOPS)
>>> PRINTK("%s: spurious interrupt (mask = 0x%02x)\n",
>>> dev->name, mask);
>>> +#endif
>>> DBG(3, "%s: Interrupt done (%d loops)\n",
>>> dev->name, MAX_IRQ_LOOPS - timeout);
>> NAK
>>
>> Either this code is OK or it isn't. This patch simply hides a problem
>> inside a configuration the developer probably doesn't use.
>>
>> What's the _real_ problem? Looking at the tracker, I'd guess that some
>> events need to be masked, but are not?
>>
>> If the hardware is asserting events continually, the current code does
>> the right thing -- keep processing interrupt events flagged, until (a)
>> no more events asserted or (b) max loop count reached.
>>
>> So the question is to find out why you are hitting the timeout, and what
>> to do about it.
>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
>
> drivers/net/smc91x.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff -puN drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode drivers/net/smc91x.c
> --- a/drivers/net/smc91x.c~smc91x-driver-fix-bug-print-warning-only-in-interrupt-mode
> +++ a/drivers/net/smc91x.c
> @@ -1326,9 +1326,11 @@ static irqreturn_t smc_interrupt(int irq
> SMC_SET_INT_MASK(lp, mask);
> spin_unlock(&lp->lock);
>
> +#ifndef CONFIG_NET_POLL_CONTROLLER
> if (timeout == MAX_IRQ_LOOPS)
> PRINTK("%s: spurious interrupt (mask = 0x%02x)\n",
> dev->name, mask);
> +#endif
> DBG(3, "%s: Interrupt done (%d loops)\n",
> dev->name, MAX_IRQ_LOOPS - timeout);
>
applied
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-04-12 8:42 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-11 4:30 [patch for 2.6.25? 2/3] smc91x driver: fix bug: print warning only in interrupt mode akpm
2008-04-12 8:42 ` Jeff Garzik
-- strict thread matches above, loose matches on Subject: below --
2008-04-09 0:31 akpm
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).