Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 4 May 2002 09:30:56 -0700 (PDT)
From:      Matthew Jacob <mjacob@feral.com>
To:        Michael Smith <msmith@freebsd.org>
Cc:        hackers@freebsd.org
Subject:   Re: naive i386 && FreeBSD interrupt question 
Message-ID:  <Pine.BSF.4.21.0205040927250.21947-100000@beppo>
In-Reply-To: <200205040626.g446Q9h00791@mass.dis.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Fri, 3 May 2002, Michael Smith wrote:

> > 
> > This was -stable- but it's really a hacker's question.
> > 
> > I really am *not* much of an i386 weenie and I'll have to admit that I don't
> > fully understand the interrupt mask scheme and I ran into a troubling problem
> > .
> > 
> > I was running some very extensive tests on a dual processor (but not SMP
> > configured) system- I was in the middle of calling busdma_load from the isp
> > driver when I got interrupted and blew up fielding an isp interrupt.
> 
> You call isp_intr out of isp_watchdog; any chance that the timeout could 
> have gone off and dumped you in there?

The callstack didn't show isp_watchdog- it also calls splcam()

> 
> Otherwise, no, you should not have had your interrupt handler reentered 
> while it was masked.  You shouldn't have to call splsoftvm() when calling 
> the busdma code; it should take whatever locks it needs at the time.
> 
> Knowing the contents of cpl vs. the CAM spl mask and the actual interrupt 
> in question would be useful, as would the stack backtrace from the 
> explosion (ie. when you say "got interrupted" was the backtrace through 
> the actual interrupt entry point?)
> 

Yes- that's the problematic thingie. I haven't reproduced it yet and didn't
save the stack, but basically it was in the middle of call to the budma code
when isp_intr was executed.

If I see it again, I'll stay in DDB and spend more time. 

This was at a client's lab and running maybe 5000+ interrupts/sec pumping
stuff thru Fibre Channel.

-matt





To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0205040927250.21947-100000>