Condividi tramite


!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

Debug dello stack di rete

Estensioni NDIS (Ndiskd.dll)

!ndiskd.help

NET_BUFFER_LIST

!ndiskd.netadapter

!ndiskd.minidriver

bp, bu, bm (Imposta punto di interruzione)