[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freebsd-hackers
Subject:    Re: Questions about interrupt handling
From:       Mike Smith <mike () smith ! net ! au>
Date:       1998-12-28 23:03:33
[Download RAW message or body]

> 
> I know that FreeBSD handles interrupts on a software basis which means
> that we do not mask any interrupt off in 8259.  I am just wondering if a
> certain interrupt is masked off in 8259 or it does not get serviced quick
> enough, what will the device controller (such as disk controller) respond?
> Will it re-issue the interrupt or just give up?  Or will it NOT generate
> another interrupt until the previous one has been serviced? Maybe
> different device controllers behave differently.

Devices do tend to behave differently, but as a general rule no, a 
device will not generate another interrupt until the first has been 
serviced.

Typical exceptions to this are vertical retrace and clock interrupts.

This is why most decent device drivers also have a slow timeout routine 
which checks the hardware for status which would indicate a lost 
interrupt, and if found, calls the interrupt handler.

-- 
\\  Sometimes you're ahead,       \\  Mike Smith
\\  sometimes you're behind.      \\  mike@smith.net.au
\\  The race is long, and in the  \\  msmith@freebsd.org
\\  end it's only with yourself.  \\  msmith@cdrom.com



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic