!ndiskd.pendingnbls
!ndiskd.pendingnbls 扩展显示传输中的挂起的 NBL (NET_BUFFER_LIST)。
!ndiskd.pendingnbls [-handle <x>] [-fullstack] [-verbosity <x>]
参数
-处理
NDIS 微型端口、筛选器或开口的句柄。
-fullstack
显示与句柄关联的整个堆栈中挂起的 NBL。
-冗长
要显示的详细信息级别。
DLL
Ndiskd.dll
示例
!ndiskd.pendingnbls 可以传递 NDIS 微型端口、筛选器或开口的句柄。 以下一系列示例使用微型端口句柄。 若要查看所有微型端口及其关联的微型驱动程序的列表,请在没有参数的情况下运行 !ndiskd.netadapter 扩展。 在以下示例输出中,查找其句柄为 ffffe00bc3f701a0 的 Microsoft 内核调试网络适配器。 其微型驱动程序的句柄是 ffffe00bc51b9ae0。
0: kd> !ndiskd.netadapter
Driver NetAdapter Name
ffffe00bc6e12ae0 ffffe00bc6e4e1a0 Microsoft ISATAP Adapter #2
ffffe00bc51b9ae0 ffffe00bc3f701a0 Microsoft Kernel Debug Network Adapter
若要查看微型端口的挂起的 NBL,请在其微型驱动程序的 SendNetBufferListsHandler 上设置断点。 使用微型驱动程序的句柄运行 !ndiskd.minidriver -handle -handlers 命令,以查看其处理程序列表,然后单击 SendNetBufferListsHandler 右侧的“bp”链接。 也可以在命令行中输入 bp -handle 命令。
0: kd> !ndiskd.minidriver ffffe00bc51b9ae0 -handlers
HANDLERS
NDIS Handler Function pointer Symbol (if available)
InitializeHandlerEx fffff80ae9618230 bp
SetOptionsHandler fffff80ae9612800 bp
HaltHandlerEx fffff80ae9618040 bp
ShutdownHandlerEx fffff80ae96122c0 bp
CheckForHangHandlerEx fffff80ae9612810 bp
ResetHandlerEx fffff80ae9612f70 bp
PauseHandler fffff80ae9618000 bp
RestartHandler fffff80ae9618940 bp
OidRequestHandler fffff80ae9611c90 bp
CancelOidRequestHandler fffff80ae96122c0 bp
DirectOidRequestHandler [None]
CancelDirectOidRequestHandler [None]
DevicePnPEventNotifyHandler fffff80ae96189a0 bp
SendNetBufferListsHandler fffff80ae9611870 bp
ReturnNetBufferListsHandler fffff80ae9611b50 bp
CancelSendHandler fffff80ae96122c0 bp
在 SendNetBufferListsHandler 上设置断点后,输入 g 命令,让调试对象目标计算机运行并达到断点。
0: kd> bp fffff80ae9611870
0: kd> g
Breakpoint 0 hit
fffff80a`e9611870 4053 push rbx
现在,在达到微型驱动程序的 SendNetBufferListsHandler 断点后,可以通过用微型端口的句柄输入 !ndiskd.pendingnbls -handle 命令来查看微型端口的任何挂起的 NBL。
注意 此示例中的调试对象目标计算机在到达断点时正在加载网页,因此流量正在流经微型端口的数据路径。 因此,它有一个挂起的 NBL 要发送。 即使在为微型驱动程序的一个或多个 NBL 处理程序设置断点后,如果数据路径中没有活动,也可能不会看到任何挂起的 NBL。
0: kd> !ndiskd.pendingnbls ffffe00bc3f701a0
PHASE 1/3: Found 20 NBL pool(s).
PHASE 2/3: Found 342 freed NBL(s).
Pending Nbl Currently held by
ffffe00bc5545c60 ffffe00bc3f701a0 - Microsoft Kernel Debug Network Adapter [NetAdapter]
PHASE 3/3: Found 1 pending NBL(s) of 4817 total NBL(s).
Search complete.