Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 05 Apr 1997 08:00:52 -0800
From:      David Greenman <dg@root.com>
To:        Thomas David Rivers <ponds!rivers@dg-rtp.dg.com>
Cc:        bde@freebsd.org, freebsd-hackers@freebsd.org
Subject:   Re: "dup alloc"/interrupts and Xresume11() - splbio() not working???? 
Message-ID:  <199704051600.IAA17284@root.com>
In-Reply-To: Your message of "Sat, 05 Apr 1997 06:34:14 EST." <199704051134.GAA17448@lakes.water.net> 

next in thread | previous in thread | raw e-mail | index | archive | help
>> 
>> > Anyway; I'm seeing things like this, and want to make sure
>> >I understand everything that's going on:
>> >
>> > 1) Xresume11() is the vector that is taken when interrupt
>> >    11 is triggered - right?
>> 
>> Wrong - _Xintr11 is the vector.
>> 
>> Bruce
>> 
>
> Well - umm; Ok - sure...
>
> But then, why does _Xresume11 call ahaintr()?  Which eventually
>gets me down to scsi_done() with _cpl set to splbio?  (Or, have
>I misunderstood something else and this isn't necessarily a "bad"
>thing to happen?)

   Bruce has probably already responded to this, but I'll jump in... The cpl
is set to the mask that is associated with the interrupt (splbio for int 11
in this case) very early in the interrupt processing code, before the
"Xresume11" in the traceback. See the code in i386/isa/vector.s - the non-
fast interrupt case.

-DG

David Greenman
Core-team/Principal Architect, The FreeBSD Project



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704051600.IAA17284>