netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* e100 badness (2.6.10-rc1-mm2)
@ 2004-11-02  4:24 Randy.Dunlap
  0 siblings, 0 replies; 2+ messages in thread
From: Randy.Dunlap @ 2004-11-02  4:24 UTC (permalink / raw)
  To: ganesh.venkatesan, jesse.brandeburg, netdev

Hi Ganesh, Jesse --

I see this in 2.6.10-rc1-mm2:

Badness in enable_irq at kernel/irq/manage.c:112
   [<c0106e09>] dump_stack+0x1e/0x20
   [<c013f7ab>] enable_irq+0xaa/0x114
   [<c02b0498>] e100_up+0x130/0x23f
   [<c02b164a>] e100_open+0x26/0x6e
   [<c0396896>] dev_open+0x6e/0x7c
   [<c0397e05>] dev_change_flags+0x56/0x126
   [<c03d2426>] devinet_ioctl+0x60b/0x6cd
   [<c03d4261>] inet_ioctl+0x81/0xae
   [<c038ddbc>] sock_ioctl+0x1d3/0x2d6
   [<c0172970>] sys_ioctl+0x179/0x21d
   [<c0105f5d>] sysenter_past_esp+0x52/0x71


I think that it happens because (in e100_up()),
disable_irq() is called before request_irq() is called.
If there are no other interrupt handlers on the same irq,
then desc->depth is cleared to 0 by setup_irq() [called
from request_irq()].
Then the following enable_irq() is confused by
desc->depth == 0.

-- 
~Randy

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

* RE: e100 badness (2.6.10-rc1-mm2)
@ 2004-11-02  5:05 Venkatesan, Ganesh
  0 siblings, 0 replies; 2+ messages in thread
From: Venkatesan, Ganesh @ 2004-11-02  5:05 UTC (permalink / raw)
  To: Randy.Dunlap, Brandeburg, Jesse, netdev; +Cc: Chilakala, Mallikarjuna

Randy:

Thanks for the information. We are aware of this (from a previous
conversation between Scott Feldman, Andrew Morton and Jeremy
Fitzhardinge). We are working on a fix for this.

Thanks,
Ganesh.

>-----Original Message-----
>From: Randy.Dunlap [mailto:rddunlap@osdl.org]
>Sent: Monday, November 01, 2004 8:24 PM
>To: Venkatesan, Ganesh; Brandeburg, Jesse; netdev@oss.sgi.com
>Subject: e100 badness (2.6.10-rc1-mm2)
>
>Hi Ganesh, Jesse --
>
>I see this in 2.6.10-rc1-mm2:
>
>Badness in enable_irq at kernel/irq/manage.c:112
>   [<c0106e09>] dump_stack+0x1e/0x20
>   [<c013f7ab>] enable_irq+0xaa/0x114
>   [<c02b0498>] e100_up+0x130/0x23f
>   [<c02b164a>] e100_open+0x26/0x6e
>   [<c0396896>] dev_open+0x6e/0x7c
>   [<c0397e05>] dev_change_flags+0x56/0x126
>   [<c03d2426>] devinet_ioctl+0x60b/0x6cd
>   [<c03d4261>] inet_ioctl+0x81/0xae
>   [<c038ddbc>] sock_ioctl+0x1d3/0x2d6
>   [<c0172970>] sys_ioctl+0x179/0x21d
>   [<c0105f5d>] sysenter_past_esp+0x52/0x71
>
>
>I think that it happens because (in e100_up()),
>disable_irq() is called before request_irq() is called.
>If there are no other interrupt handlers on the same irq,
>then desc->depth is cleared to 0 by setup_irq() [called
>from request_irq()].
>Then the following enable_irq() is confused by
>desc->depth == 0.
>
>--
>~Randy

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

end of thread, other threads:[~2004-11-02  5:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-11-02  4:24 e100 badness (2.6.10-rc1-mm2) Randy.Dunlap
  -- strict thread matches above, loose matches on Subject: below --
2004-11-02  5:05 Venkatesan, Ganesh

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).