Messages in this thread | | | Date | Wed, 22 Sep 1999 03:07:28 +0000 | From | Steve Underwood <> | Subject | Re: [Q]: Linux and real device drivers |
| |
Bret Indrelee wrote:
> Instead you should: > > irq > poll device (assuming PCI or similiar) > if your device, > disable device irq (clears the IRQ) and > post to semaphore for deferred processing > end of irq > > <-- Things pass --> > schedule processing that was waiting on semaphore > > copy data > enable device interrupt > run stuff > > go back to waiting for next IRQ, which may have already happened.
Sounds like you could make a real improvement to efficiency and cache hits here. Just turn off the interrupts, and let the scheduler directly poll the hardware instead of some pointless semaphore.
Come on. The interrupts are there for a purpose. You just made them a valueless overhead.
Steve
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |