!ndiskd.pendingnbls 扩展显示正在传输的挂起的 NBL (NET_BUFFER_LISTs)。
!ndiskd.pendingnbls [-handle <x>] [-fullstack] [-verbosity <x>]
参数
-处理
NDIS 微型端口、筛选器或打开的句柄。
-fullstack
显示与句柄关联的整个堆栈中挂起的 NBL。
-冗长
要显示的详细信息级别。
DLL
Ndiskd.dll
例子
!ndiskd.pendingnbls 可以传递 NDIS 微型端口、筛选器或打开的句柄。 以下一系列示例使用微型端口句柄。 若要查看所有微型端口及其关联的微型驱动程序的列表,请运行不带参数的 !ndiskd.netadapter 扩展。 在以下示例输出中,查找Microsoft内核调试网络适配器,其句柄为 ffffe00bc3f701a0。 其微型驱动程序的句柄是 ffffe00bc51b9ae0。
0: kd> !ndiskd.netadapter
Driver NetAdapter Name
ffffe00bc6e12ae0 ffffe00bc6e4e1a0 Microsoft ISATAP Adapter #2
ffffe00bc51b9ae0 ffffe00bc3f701a0 Microsoft Kernel Debug Network Adapter
若要查看微型端口的挂起的 NBL,请在其微型驱动程序的 SendNetBufferListsHandler 上设置断点。 使用 minidriver 的句柄运行 !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.