mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@osdl.org>
To: ktech@wanadoo.es
Cc: Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Manfred Spraul <manfred@colorfullife.com>,
	Jeff Garzik <jgarzik@pobox.com>
Subject: Re: 2.6.7-rc1 breaks forcedeth
Date: Sat, 5 Jun 2004 20:14:26 -0700 (PDT)	[thread overview]
Message-ID: <Pine.LNX.4.58.0406051958150.7010@ppc970.osdl.org> (raw)
In-Reply-To: <E1BWmws-0005aN-Nw@mb04.in.mad.eresmas.com>



On Sun, 6 Jun 2004 ktech@wanadoo.es wrote:
> 
> 2.6.7rc
> 
> ------------
>            CPU0       
>   0:     163490          XT-PIC  timer
>   1:        170          XT-PIC  i8042
>   2:          0          XT-PIC  cascade
>   5:          0          XT-PIC  Bt87x audio
>   7:          0          XT-PIC  NVidia nForce2
>   8:          2          XT-PIC  rtc
>   9:          0          XT-PIC  acpi
>  11:     100000          XT-PIC  ehci_hcd
>  12:       1162          XT-PIC  i8042
>  14:      14766          XT-PIC  ide0
>  15:         18          XT-PIC  ide1
> NMI:          0 
> ERR:          0

This doesn't show the forcedeth driver at all. Not on irq11 (where it 
should be), and not anywhere else either.

The thing is, the driver seems to not actually even register the irq 
handler until the device is opened, which seems a bit bogus. It will 
certainly result in problems if the device ever sends an interrupt. And 
that seems to be exactly the behaviour you see.

I suspect that the driver should at the very least make sure to disable
any potentially pending interrupts in the "nv_probe()" function. I have no 
idea how to do that, but it looks like something like

	writel(0, base + NvRegIrqMask);
	writel(NVREG_IRQSTAT_MASK, base + NvRegIrqStatus);

should probably do it. It would be better to reset the thing completely, 
methinks, but whatever.

Anyway, this really looks very much like an irq is pending on the ethernet 
controller, and isn't cleared, and then when the USB driver registers the 
same irq (which was previously masked because nobody had actually 
registered it), you get a storm of irq's.

As to _why_ this happens only with the current kernel, I don't know. Might 
be an irq level/edge issue.

It would be interesting to have the forcedeth driver print out the irq it 
will use in nv_probe, just to verify that it's 11. So when it currently 
just says "forcedeth.c: subsystem: %05x:%04x bound to %s", make it print 
out "dev->irq" too..

		Linus

  reply	other threads:[~2004-06-06  3:14 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-06  1:59 ktech
2004-06-06  3:14 ` Linus Torvalds [this message]
2004-06-06  8:36   ` Manfred Spraul
2004-06-06 17:04     ` Linus Torvalds
2004-06-06 18:13       ` Jeff Garzik
2004-06-06 18:21   ` Jeff Garzik
2004-06-06 18:32     ` Linus Torvalds
  -- strict thread matches above, loose matches on Subject: below --
2004-06-16 18:40 David Mansfield
2004-06-06 13:49 jjluza
     [not found] <E1BWxTh-0002dx-KR@mb06.in.mad.eresmas.com>
2004-06-06 13:31 ` Daniel Schmitt
2004-06-06 12:10 ktech
2004-06-06 12:53 ` Vincent van de Camp
2004-06-06 13:40   ` Manfred Spraul
2004-06-06 14:17 ` Manfred Spraul
2004-06-05 23:41 Luis Miguel García Mancebo
2004-06-05 23:50 ` Linus Torvalds
2004-05-31  0:29 jjluza
2004-05-30 17:54 Luis Miguel García Mancebo
2004-05-30 20:47 ` Jeff Garzik
2004-05-30 15:57 Lee Howard
2004-05-30 17:20 ` Jeff Garzik
2004-05-30 22:59   ` Lee Howard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.58.0406051958150.7010@ppc970.osdl.org \
    --to=torvalds@osdl.org \
    --cc=jgarzik@pobox.com \
    --cc=ktech@wanadoo.es \
    --cc=linux-kernel@vger.kernel.org \
    --cc=manfred@colorfullife.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®