[fa.info-vax] Cancelling another process' I/O requests

info-vax@ucbvax.ARPA (07/13/85)

From: GKN%OAK.SAINET.MFENET@LLL-MFE.ARPA




Hard (if not impossible) to do without being in the context of the process
involved, since the CCBs live in P1 space and there is a pending I/O count
through a channel that EXE$CANCEL and friends insist on decrementing.

If you don't mind the pending I/O count through another process' channel
being wrong (and I don't think that this is a good idea;  it'll prevent
the process from being deleted) then you could get brave and remove the
IRP from the UCB's I/O queue and stick it on the I/O post processing
queue.  But this is also nasty because some device drivers like to know
when an I/O request gets cancelled even if it hasn't been started yet.

It's still best to queue a special kernel AST to the process in question
to clobber the I/O request.

gkn

------------------------------------------
Arpa:   GKN%OAK.SAInet@LLL-MFE
USPS:   Gerard K. Newman
        Science Applications International
        800 Oak Ridge Turnpike
        Oak Ridge, TN  37830
AT&T:   (615) 482-9031