Hi,I am developing a WSK driver to transfer some data from one node to another. While the data transfer is ongoing if the receiving node shuts down, it does some cleanup and at one point calls WskCloseSocket. This call however never returns. If i try to track this irp, it seems it is stuck with AFD.sys. However when we examine the devobject of AFD.sys it says that the device queue is not busy. I am not sure how to track this Irp any further. Any pointers are appreciated.
7: kd> !irp 0xfffff980`0c73eee0
Irp is active with 1 stacks 1 is current (= 0xfffff9800c73efb0)
No Mdl: No System Buffer: Thread 00000000: Irp stack trace.
cmd flg cl Device File Completion-Context
>[ f, c] 0 e1 fffffa801116ecb0 00000000 fffff880042dbde0-fffff9800c6f6f30 Success Error Cancel pending
\Driver\AFD winsockkern!_completion_routine Args: fffffa80f36ab7c0 fffff8800d0ca390 00000002 000000007:
kd> !devobj fffffa801116ecb0
Device object (fffffa801116ecb0) is for:
Afd \Driver\AFD DriverObject fffffa8011169e60Current Irp 00000000 RefCount 31 Type 00000011 Flags 00000050
Dacl fffff9a10013b4a1 DevExt 00000000 DevObjExt fffffa801116ee00
ExtensionFlags (0x80000800) DOE_DEFAULT_SD_PRESENT, DOE_DESIGNATED_FDO
Characteristics (0x00020000) FILE_DEVICE_ALLOW_APPCONTAINER_TRAVERSAL
Device queue is not busy.
7: kd> !irp 0xfffff980`0c73eee0
Irp is active with 1 stacks 1 is current (= 0xfffff9800c73efb0)
No Mdl: No System Buffer: Thread 00000000: Irp stack trace.
cmd flg cl Device File Completion-Context
>[ f, c] 0 e1 fffffa801116ecb0 00000000 fffff880042dbde0-fffff9800c6f6f30 Success Error Cancel pending
\Driver\AFD winsockkern!_completion_routine Args: fffffa80f36ab7c0 fffff8800d0ca390 00000002 000000007:
kd> !devobj fffffa801116ecb0
Device object (fffffa801116ecb0) is for:
Afd \Driver\AFD DriverObject fffffa8011169e60Current Irp 00000000 RefCount 31 Type 00000011 Flags 00000050
Dacl fffff9a10013b4a1 DevExt 00000000 DevObjExt fffffa801116ee00
ExtensionFlags (0x80000800) DOE_DEFAULT_SD_PRESENT, DOE_DESIGNATED_FDO
Characteristics (0x00020000) FILE_DEVICE_ALLOW_APPCONTAINER_TRAVERSAL
Device queue is not busy.