edge-triggered IRQ

Jan Kasprzak kas na informatics.muni.cz
Středa Červen 17 09:23:56 CEST 1998


Martin Mares pise:
: Zdravim,
: 
: > 	Ne. K cemu vubec je disable_irq() - da se to pouzit k zamykani
: > kritickych sekci driveru lepe, nez spin_lock_irqsave(muj_zamek, flags)
: > /spin_unlock_irqrestore(muj_zamek, flags)?
: 
:    disable_irq() umoznuje nechat si zakazat konkretni IRQ, takze jej clovek
: muze pouzivat tam, kde by jinak pouzil globalni cli(), a tim si lockovat
: sve struktury proti interruptum, aniz by brzdil obsluhu ostatnich interruptu.
: Na druhou stranu, brani pouze prislusnemu interruptu, takze pokud ma byt
: kod SMP-safe, nezbyde nic nez pouzit spinlocku. spin_lock_irqsave zakazujici
: jen specificky interrupt ale bohuzel k dispozici neni :-(

	Jak je narocne disable_irq()? Pokud to obnasi komunikaci s PICem,
muze to byt na single-cpu daleko pomalejsi, nez spin_lock_irqsave().

-Yenya

--
\ Jan "Yenya" Kasprzak <kas at fi.muni.cz>       http://www.fi.muni.cz/~kas/
\\ PGP: finger kas at aisa.fi.muni.cz   0D99A7FB206605D7 8B35FCDE05B18A5E //
\\\             Czech Linux Homepage:  http://www.linux.cz/              ///
If there are race conditions in programs fix them. The "my programs suck fix
something else" mentality leads you to things like Java.         -- Alan Cox


Další informace o konferenci Linux