Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 01 Jun 1997 23:08:23 -0700
From:      David Greenman <dg@root.com>
To:        Michael Smith <msmith@atrad.adelaide.edu.au>
Cc:        hackers@FreeBSD.ORG, bde@FreeBSD.ORG
Subject:   Re: weird scheduler crash (2.2) 
Message-ID:  <199706020608.XAA29562@implode.root.com>
In-Reply-To: Your message of "Mon, 02 Jun 1997 15:29:10 %2B0930." <199706020559.PAA18982@genesis.atrad.adelaide.edu.au> 

next in thread | previous in thread | raw e-mail | index | archive | help
>David Greenman stands accused of saying:
>> >calltrap() at calltrap+0x15
>> >--- trap 0xc, eip = 0xf0117408, esp = 0xefbffe84, ebp = 0xefbffe88 ---
>> >_unsleep(f0d0cc00) at _unsleep+0x48
>> >_selwakeup(f0214348) at _selwakeup+0x76
>> >_mdsiointr(0,10,f020f9dc,118,ffffffff) at _mdsiointr+0x184
>> >_Xfastintr10(f020f9dc,118,f011cb84,b,f01f5748) at _Xfastintr10+0x17
>> >_select(f0d0cc00,efbfff94,efbfff84) at _select+0x2e2
>> >_syscall(27,27,4,4,efbf77d4) at _syscall+0x127
>> >_Xsyscall() at _Xsyscall+0x35
>> >--- syscall 0x5d, eip = 0x7c945, esp = 0xefbf7568, ebp = efbf77d4 ---
>> >
>> >have.  It looks like the driver (mdsio) took an interrupt during a
>> >select syscall which in turn resulted in the driver trying to wake the
>> >selecting process up again.
>> 
>>    What is mdsio? It looks like it is configured as a "fast" interrupt
>> handler, but is breaking the rules by calling the wakeup code.
>
>Ah, this is something I didn't know about.  It's "just" an ISA driver.
>
>How do I determine whether an interrupt handler is configured "fast" or 
>"slow"?

   It's controlled by the RI_FAST flag in the id_ri_flags field of the
isa_device struct.

>  Where are the rules for "fast" and "slow" handlers described?

   I don't think they are described anywhere. Talk to Bruce...

-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?199706020608.XAA29562>