!ndiskd.pendingnbls
L'estensione !ndiskd.pendingnbls visualizza gli NCL in sospeso (NET_BUFFER_LISTs) in transito.
!ndiskd.pendingnbls [-handle <x>] [-fullstack] [-verbosity <x>]
Parametri
-maneggiare
Handle di un miniport NDIS, un filtro o un'apertura.
-fullstack
Mostra gli elenchi di criteri di rete in sospeso dall'intero stack associato all'handle.
-prolissità
Livello di dettaglio da visualizzare.
DLL
Ndiskd.dll
Esempi
!ndiskd.pendingnbls può essere passato l'handle di un miniport NDIS, un filtro o un'apertura. La serie di esempi seguente usa un handle miniport. Per visualizzare un elenco di tutti i miniport e dei minidriver associati, eseguire l'estensione !ndiskd.netadapter senza parametri. Nell'output di esempio seguente cercare la scheda di rete debug del kernel Microsoft, il cui handle è ffffe00bc3f701a0. L'handle del minidriver è ffffe00bc51b9ae0.
0: kd> !ndiskd.netadapter
Driver NetAdapter Name
ffffe00bc6e12ae0 ffffe00bc6e4e1a0 Microsoft ISATAP Adapter #2
ffffe00bc51b9ae0 ffffe00bc3f701a0 Microsoft Kernel Debug Network Adapter
Per visualizzare gli elenchi di numeri di rete in sospeso per un miniport, impostare un punto di interruzione sul relativo SendNetBufferListsHandler del minidriver. Usare l'handle del minidriver per eseguire il comando !ndiskd.minidriver -handle -handle -handlers per visualizzare un elenco dei relativi gestori, quindi fare clic sul collegamento "bp" a destra di SendNetBufferListsHandler. In alternativa, è possibile immettere il comando bp -handle nella riga di comando.
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
Dopo aver impostato il punto di interruzione in SendNetBufferListsHandler, immettere il comando g per consentire l'esecuzione del computer di destinazione di debug e raggiungere il punto di interruzione.
0: kd> bp fffff80ae9611870
0: kd> g
Breakpoint 0 hit
fffff80a`e9611870 4053 push rbx
Ora, dopo aver raggiunto il punto di interruzione SendNetBufferListsHandler del minidriver, è possibile visualizzare gli eventuali NCL in sospeso per il miniport immettendo il comando !ndiskd.pendingnbls -handle con l'handle del miniport.
Nota Il computer di destinazione di debug in questo esempio stava caricando una pagina Web quando raggiunge il punto di interruzione, quindi il traffico passava attraverso il percorso dati del miniport. Pertanto, aveva un NBL in sospeso da inviare. Anche dopo aver impostato un punto di interruzione su uno o più gestori NBL per il minidriver, è possibile che non vengano visualizzati ncl in sospeso se non sono presenti attività nel percorso dati.
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.
Vedi anche
Guida alla progettazione dei driver di rete
Informazioni di riferimento sulla rete di Windows Vista e versioni successive