Clarification of device driver subtleties

speck at CIT-VAX.ARPA speck at CIT-VAX.ARPA
Wed Jul 25 06:43:00 AEST 1984


From:  Don Speck <speck at CIT-VAX.ARPA>

    Before I get any more letters misinterpreting my question, let me
clarify:  nowhere did I mention ANYTHING about calling sleep() from an
interrupt routine!  As you can see in my letter, I call sleep() at ipl
0x14 from rlpwrite(), the write routine for my driver.	Please don't
tell me that it can't work, because a lot of 4.2bsd drivers do it; look
at lpoutput() in /sys/vaxuba/lp.c.
    Perhaps I confused everybody by using the term "interrupt level"
when I should say "processor priority raised to ipl 0x14 to temporarily
lock out interrupts during a critical section".  So let me rephrase the
question:
    Does sleep() do anything strange when called with processor priority
at 0x14, and can signals such as SIGINT/SIGQUIT interrupt such a sleep?
						Don Speck



More information about the Comp.unix.wizards mailing list