Subject: Re: CVS commit: src/sys/dev/pci
To: Jared D. McNeill <jmcneill@invisible.ca>
From: None <david.sainty@dtsp.co.nz>
List: source-changes
Date: 11/25/2007 16:02:17
"Jared D. McNeill" writes:

> On Sat, 24 Nov 2007, Joerg Sonnenberger wrote:
> >> I'm confused -- shouldn't interrupts still be disabled at this point?
> >
> > They aren't disabled in hardware at this point, but there should be an
> > splhigh in place.
> 
> Right, so why/how is uhci_intr being called at this point?

I assume the problem isn't that uhci_intr is called at that point, but
that it's called as soon at interrupts are enabled.

This does seem to be a little odd - even if uhci_intr is called when
the interrupt is handled, it shouldn't actually fault on the
reinitialised device surely?  Acknowledging pending interrupts at the
start of attaching seems harmless and probably a good thing.

But doesn't the fact it's crashing suggest that the reinitialisation
isn't complete?  I.e. this patch fixes most crashes, but it could
still crash if a legitimate interrupt comes in very early?