I am getting a crash in my driver in long hour tests. Every time the
bugcheck (0xFE) identifies the problem as IRP_URB_DOUBLE_SUBMIT.
The documentation of this says : The caller has submitted an irp that
is already pending in the USB bus driver.
However nowhere in my driver I am re-using an IRP ! Every time I
allocate an IRP and destroy it in the completion. I assume that
IoAllocateIrp will every time give me a fresh IRP and so same IRP will
never be submitted to USB subsystem. I am therefore perplexed why it
would happen so.
Is it that the bugcheck can also occur for some other case than irp
resubmitting?
I also observe that when I try to get the details of the IRP in
question, I get "Could not read device object or _DEVICE_OBJECT not
found" message for the device object associated with the IRP.
Any pointers will be great appreciated.
Thanks and Regards,
Abhijit
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.
"Abhijit Mmirajkar" <abhijit....@gmail.com> wrote in message
news:1e16aaca-b181-465b...@v67g2000hse.googlegroups.com...
I had the same a while ago. I allocated the IRP while I reused the
associated URB. The underlying USBD couldn't cope with this during
endurance testing. In the end, I reused the IRP as well and that
solved the problem.