When a device is either stopped or removed, shouldn't the current IRP
for which there was I/O in progress be completed before finishing the
stop/remove PNP request? When I look at the WDM book examples, I see
the device's IRP queue being either stalled or aborted, but I'm unsure
about the way the I/O in progress is handled. Both stop and remove
look like they either wait for the current I/O to finish or cause the
device hardware to abort it, but shouldn't they also complete the IRP
associated with that I/O? (either with success in the stop/wait case
or error in the remove/abort case)

Re: PNP stop/remove and the current IRP by Doron

Doron
Sat Sep 09 00:45:42 CDT 2006

stop should be completely transparent, so you usually finish any outstanding
i/o, complete teh stop irp, and then pend the rest until you move out of the
stopped state.. on remove, you purge the queue and complete all i/o and
then complete the remove.

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


<BubbaGump> wrote in message
news:0rc3g2d21du3rnro95vubhsl2i251enplc@4ax.com...
> When a device is either stopped or removed, shouldn't the current IRP
> for which there was I/O in progress be completed before finishing the
> stop/remove PNP request? When I look at the WDM book examples, I see
> the device's IRP queue being either stalled or aborted, but I'm unsure
> about the way the I/O in progress is handled. Both stop and remove
> look like they either wait for the current I/O to finish or cause the
> device hardware to abort it, but shouldn't they also complete the IRP
> associated with that I/O? (either with success in the stop/wait case
> or error in the remove/abort case)
>



Re: PNP stop/remove and the current IRP by Maxim

Maxim
Sat Sep 09 19:50:52 CDT 2006

> When a device is either stopped or removed, shouldn't the current IRP
> for which there was I/O in progress be completed before finishing the
> stop/remove PNP request?

Yes, it should.

> about the way the I/O in progress is handled. Both stop and remove
> look like they either wait for the current I/O to finish or cause the
> device hardware to abort it

I also think so.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com