Hi All,
When I am running Devpathexer on Win7x64, I am getting bugcheck 10D.
I was able to capture the dump info:
It says same Request is being sent to the target,
This behaviour is specific to one device only, and on different device and same driver, devpathexer is working fine.
How can I ensure, the same request is not sent again?
BugCheck 10D, {6, 3, 57ffc3b9ba8, fffffa8003594db0}
.
.
!analyze -v
WDF_VIOLATION (10d)
The Kernel-Mode Driver Framework was notified that Windows detected an error
in a framework-based driver. In general, the dump file will yield additional
information about the driver that caused this bug check.
Arguments:
Arg1: 0000000000000006, A fatal error was made in handling a WDF request. In this case,
Parameter 2 further specifies the type of fatal error that has
been made, as defined by the enumeration WDF_REQUEST_FATAL_ERROR.
Arg2: 0000000000000003, The driver attempted to send a framework request that has
already been sent to an I/O target.
Arg3: 0000057ffc3b9ba8, The WDF request handle value.
Arg4: fffffa8003594db0, Reserved.
BUGCHECK_STR: 0x10D_6
DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT
CURRENT_IRQL: 0
LAST_CONTROL_TRANSFER: from fffff800029bc6d2 to fffff800028bef60
STACK_TEXT:
fffff88002f1adf8 fffff800029bc6d2 : 0000000000000000 0000000000000000 0000000000000000 fffffa8003ca2000 : nt!DbgBreakPointWithStatus
fffff88002f1ae00 fffff800029bda98 : fffff80000000004 fffff80002ac5b40 000000000000000f fffff880009f1f40 : nt!HeadlessDispatch+0x192
fffff88002f1ae60 fffff800028c7004 : fffffa8003580016 fffff88002f1b598 0000000000000008 0000000000000000 : nt!KeEnterKernelDebugger+0xd48
fffff88002f1b530 fffff88000d5e589 : 000000000000010d 0000000000000006 0000000000000003 0000057ffc3b9ba8 : nt!KeBugCheckEx+0x104
fffff88002f1b570 fffff88000d5ee2b : 0000000000000000 fffff88000d7b100 0000000000000000 fffffa8003581020 : Wdf01000!FxIoTarget::SubmitLocked+0xd5
fffff88002f1b630 fffff88000d74767 : 0000000000000000 0000000000000000 0000057ffca7efd8 fffffa8003c465e0 : Wdf01000!FxIoTarget::Submit+0x63
fffff88002f1b670 fffff880045b9b80 : fffffa8003594f00 fffffa8003c46450 fffffa8003581020 fffffa8003c42370 : Wdf01000!imp_WdfRequestSend+0x413
fffff88002f1b6c0 fffff880045b9ed0 : 0000057ffcf45288 fffffa8003c42370 0000000000000040 fffffa8003581020 : MYUSBPP!StartWriteUrb+0x1a8 [c:\devpatheexrissue1apr11\win7-MY-yx-par\write.c @ 693]
fffff88002f1b760 fffff880045b9995 : fffffa8003c42370 0000000000000000 fffffa800424a2a8 fffff8800499ac8f : MYUSBPP!TransmitData+0x2dc [c:\devpatheexrissue1apr11\win7-MY-yx-par\write.c @ 925]
fffff88002f1b790 fffff88000d8922b : fffffa8003c46450 fffffa80018d22a0 fffffa80018d22a0 fffff880049d777e : MYUSBPP!OnWriteInterrupt+0x45 [c:\devpatheexrissue1apr11\win7-MY-yx-par\write.c @ 564]
fffff88002f1b7c0 fffff88000d5fc9b : fffffa8003581020 fffffa8003581020 fffffa8003581030 fffffa800359de01 : Wdf01000!FxRequestBase::CompleteSubmitted+0x177
fffff88002f1b840 fffff88000d5fdc4 : fffff980020fac02 fffff9800d3fad80 0000000000000000 fffff80002d6e40a : Wdf01000!FxIoTarget::RequestCompletionRoutine+0x1cb
fffff88002f1b8b0 fffff800028b1935 : fffff800028b18e0 fffff98002efafb8 fffff98002efae10 fffff88002f1baa0 : Wdf01000!FxIoTarget::_RequestCompletionRoutine+0x3c
fffff88002f1b8e0 fffff80002d6e5d6 : fffff98002efafb8 fffffa80030bd230 fffff88002f1baa0 fffff98002efae10 : nt!IoSetCompletionRoutineEx+0x115
fffff88002f1b910 fffff800028c9516 : fffff98002efafbb fffff80000000001 0000000000000000 fffff88000000005 : nt!NtShutdownSystem+0x261a6
fffff88002f1b970 fffff80002d6619f : fffff98002efae10 fffffa80035bf100 fffffa800366a000 0000000000000000 : nt!memset+0x496
fffff88002f1ba50 fffff88003e135d9 : fffffa800366a050 fffffa80042b7902 0000000000000002 fffffa800366a050 : nt!NtShutdownSystem+0x1dd6f
fffff88002f1bb20 fffff88003e13ab7 : fffffa8003192702 fffff98002efae10 00000000ffffffff fffffa800366aea8 : USBPORT+0x135d9
fffff88002f1bc00 fffff88003e1164f : fffffa800366aea8 fffffa800366a1a0 fffffa800366b040 0000000000000000 : USBPORT+0x13ab7
fffff88002f1bc60 fffff88003e02f89 : fffffa800366a050 0000000000000000 fffffa800366ae02 fffffa800366aea8 : USBPORT+0x1164f
fffff88002f1bca0 fffff800028d25dc : fffff880009e7180 fffffa800366aea8 fffffa800366aec0 0000000000000000 : USBPORT+0x2f89
fffff88002f1bcd0 fffff800028cf6fa : fffff880009e7180 fffff880009f1f40 0000000000000000 fffff88003e02db0 : nt!KeRemoveQueueEx+0xe1c
fffff88002f1bd80 0000000000000000 : fffff88002f1c000 fffff88002f16000 fffff88002f1bd40 0000000000000000 : nt!KeUpdateSystemTime+0x47a
STACK_COMMAND: kb
FOLLOWUP_IP:
MYUSBPP!StartWriteUrb+1a8 [c:\devpatheexrissue1apr11\win7-MY-yx-par\write.c @ 693]
fffff880`045b9b80 0fb6d8 movzx ebx,al
FAULTING_SOURCE_CODE:
691:
692: reqContext->Length = Extension->WriteSize;
693: if (!(status = WdfRequestSend(Request, WdfUsbTargetPipeGetIoTarget(pipe), WDF_NO_SEND_OPTIONS))) {
694: status = WdfRequestGetStatus(Request);
695: ASSERT(!NT_SUCCESS(status));
696: }
697:
698: