Messages in this thread | | | Date | Tue, 14 Mar 2006 08:45:01 -0800 | From | Zachary Amsden <> | Subject | Re: VMI Interface Proposal Documentation for I386, Part 5 |
| |
Zwane Mwaikambo wrote: > Hello Zach, > > On Tue, 14 Mar 2006, Zachary Amsden wrote: > > >> It could be possible to change the semantics of the interrupt masking >> interface in Linux, such that enable_interrupts() did just that - but did not >> yet deliver pending IRQs. As did restore_interrupt_mask(). This would >> require inspection of many drivers to ensure that they don't rely on those >> actions causing immediate interrupt delivery. And if they did, they would >> require a call, say, deliver_pending_irqs() to accomplish that. >> > > I think we can break these down into low level and higher level interrupt > enabling. Lower level tends to be call sites like exception entry, in that > particular case drivers aren't aware of the interrupt enable/disable > semantics so it's safe to enable without dispatch. Higher up is where > dispatch makes sense and we can closer mimick hardware. >
Yes, there may clearly be a benefit to having a low level / high level separation - say STI / PUSHF / POPF, and EnableInterrupts, SaveInterruptFlag, RestoreInterruptFlag. I didn't want to do that yet, since it adds bulk to the interface, but there clearly is some value there. And as you point out, it does save a driver audit.
Zach - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |