PERFORCE change 112424 for review

Olivier Houchard cognet at ci0.org
Tue Jan 2 10:20:20 PST 2007


On Tue, Jan 02, 2007 at 01:01:26PM -0500, John Baldwin wrote:
> On Tuesday 02 January 2007 12:40, Olivier Houchard wrote:
> > On Tue, Jan 02, 2007 at 12:20:09PM -0500, John Baldwin wrote:
> > > On Tuesday 02 January 2007 11:53, Olivier Houchard wrote:
> > > > http://perforce.freebsd.org/chv.cgi?CH=112424
> > > > 
> > > > Change 112424 by cognet at hulglah on 2007/01/02 16:52:32
> > > > 
> > > > 	Implement a minimalist intr_eoi_src which just calls arm_unmask_irq(),
> > > > 	so that irq are unmasked after a filter+ithread runs.
> > > 
> > > Err, you shouldn't need to mask the IRQ unless you schedule the ithread.   Hmm,
> > > I'd also prefer it if we didn't pass function handlers to mi_handle_intr() (which
> > > should be intr_handle() or something, all the MI interrupt code is intr_foo(),
> > > not mi_foo_intr()) but instead set them in the intr_event and passed them to
> > > intr_event_create().
> > 
> > Basically the problem is arm_execute_handlers() can't know if we're talking
> > about an interrupt for which we had a filter, and so we don't have to mask it,
> > or an interrupt for which we have to schedule the ithread. So it has to be
> > always masked.
> 
> Err, no, it shouldn't. :)  mi_handle_intr() will use a different callback for the
> different cases.  It should call the disable_and_eoi() hook if the interrupt should
> be masked, and it should just call teh eoi() hook if the interrupt just needs to be
> eoi'd but not disabled (because a filter claimed it).
> 


Oops you're right of course. Just making disab masking the interrupt, and not
doing so by default should work fine.

Olivier


More information about the p4-projects mailing list