Controllo bug 0x7C: BUGCODE_NDIS_DRIVER
Il controllo dei bug BUGCODE_NDIS_DRIVER ha un valore di 0x0000007C. Questo controllo di bug indica che il sistema operativo ha rilevato un errore in un driver di rete.
Importante
Questo articolo è destinato ai programmatori. Se si è un cliente che ha ricevuto un codice di errore della schermata blu durante l'uso del computer, vedere Risolvere gli errori della schermata blu.
parametri BUGCODE_NDIS_DRIVER
Il parametro 1 indica il tipo di violazione. Il significato degli altri parametri dipende dal valore del parametro 1. Se il valore di un parametro è "0", significa che non viene usato.
Parametro 1 | Valore del parametro 1 e causa dell'errore | Parametro 2 | Parametro 3 | Parametro 4 |
---|---|---|---|---|
0x01 |
NDIS_BUGCHECK_ALLOCATE_SHARED_MEM_HIGH_IRQL Driver denominato NdisMAllocateSharedMemory in un IRQL generato. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Lunghezza della memoria condivisa richiesta |
IrQL corrente |
0x02 |
NDIS_BUGCHECK_SHARED_MEM_CORRUPTION Durante una chiamata a NdisMAllocateSharedMemory, NDIS ha rilevato che una pagina di memoria condivisa allocata in precedenza era danneggiata. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Pagina di memoria condivisa danneggiata |
Indirizzo di un NDIS_WRAPPER_CONTEXTE che tiene traccia delle allocazioni di memoria condivisa dal driver |
0x03 |
NDIS_BUGCHECK_FREE_INVALID_SHARED_MEM Un driver miniport denominato NdisMFreeSharedMemory (Async) con un indirizzo di memoria condivisa già liberato. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Pagina dalla quale è stata allocata la memoria condivisa |
Indirizzo virtuale della memoria condivisa |
0x04 |
NDIS_BUGCHECK_UNLOAD_DRIVER_INVALID_PARAMETER AddDevice è stato chiamato con un driver che non è presente nell'elenco dei driver registrati con NDIS. Abilitato solo su NDIS instrumentato speciale. |
Indirizzo del NDIS_M_DRIVER_BLOCK |
Indirizzo del DRIVER_OBJECT |
0 |
0x05 |
NDIS_BUGCHECK_RECVD_PACKET_IN_USE_BAD_STACK_LOCATION Un driver Ethernet ha indicato che ha ricevuto un pacchetto usando un descrittore di pacchetti attualmente in uso dallo stack di protocolli. Intercettata controllando la posizione dei pacchetti dello stack. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del descrittore di pacchetti utilizzato dal driver. Per altre informazioni, eseguire !ndiskd.pkt con questo indirizzo. |
Indirizzo della matrice di pacchetti che conteneva questo descrittore di pacchetti |
0x06 |
NDIS_BUGCHECK_RECVD_PACKET_IN_USE_BAD_REF_COUNT Un driver Ethernet ha indicato che ha ricevuto un pacchetto usando un descrittore di pacchetti attualmente in uso dallo stack di protocolli. Rilevato controllando il conteggio dei riferimenti ai pacchetti. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del descrittore di pacchetti utilizzato dal driver. Per altre informazioni, eseguire !ndiskd.pkt con questo indirizzo. |
Indirizzo della matrice di pacchetti che conteneva questo descrittore di pacchetti |
0x07 |
Un driver FDDI indica che ha ricevuto un pacchetto usando un descrittore di pacchetti attualmente in uso dallo stack di protocolli. Rilevato controllando il conteggio dei riferimenti. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del descrittore di pacchetti utilizzato dal driver. Per altre informazioni, eseguire !ndiskd.pkt con questo indirizzo. |
Indirizzo della matrice di pacchetti che conteneva questo descrittore di pacchetti |
0x08 |
NDIS_BUGCHECK_HALT_WITHOUT_INTERRUPT_DEREGISTER Un driver miniport non ha annullato la registrazione del suo interrupt durante il processo di arresto. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del NDIS_MINIPORT_INTERRUPT |
0 |
0x09 |
NDIS_BUGCHECK_HALT_WITHOUT_CANCEL_TIMER Un driver miniport si è arrestato senza annullare correttamente tutti i timer. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo della coda timer del driver miniport (NDIS_MINIPORT_TIMER) |
0 |
0x0A |
NDIS_BUGCHECK_DRIVER_UNLOAD_UNEXPECTED Un driver miniport viene scaricato prematuramente. |
Indirizzo del NDIS_M_DRIVER_BLOCK |
Indirizzo del DRIVER_OBJECT |
Conteggio dei riferimenti per il driver miniport |
0x0B |
NDIS_BUGCHECK_INIT_FAILED_WITHOUT_INTERRUPT_DEREGISTER L'inizializzazione di un driver miniport non è riuscita senza registrarne l'interruzione. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del NDIS_MINIPORT_INTERRUPT |
0 |
0x0C |
NDIS_BUGCHECK_INIT_FAILED_WITHOUT_CANCEL_TIMER Un driver miniport non ha superato l'inizializzazione senza annullare correttamente tutti i relativi timer. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo della coda timer del driver miniport (NDIS_MINIPORT_TIMER) |
0 |
0x0d |
NDIS_BUGCHECK_HALT_INIT_WITHOUT_INTERRUPT_DEREGISTER Un driver miniport non ha annullato la registrazione del suo interrupt durante il processo di arresto. L'interruzione è stata chiamata dalla routine di inizializzazione dopo che il driver miniport ha restituito l'esito positivo dal gestore di inizializzazione. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del NDIS_MINIPORT_INTERRUPT |
0 |
0x0E |
NDIS_BUGCHECK_HALT_INIT_WITHOUT_CANCEL_TIMER Un driver miniport si è arrestato senza annullare correttamente tutti i timer. L'interruzione è stata chiamata dalla routine di inizializzazione dopo che il driver miniport ha restituito l'esito positivo dal gestore di inizializzazione. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo della coda timer del driver miniport (NDIS_MINIPORT_TIMER) |
0 |
0x0F |
NDIS_BUGCHECK_RESET_COMPLETE_UNEXPECTED Driver miniport denominato NdisMResetComplete senza alcuna richiesta di reimpostazione in sospeso. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Stato di reimpostazione |
AddressingReset (BOOLEAN) |
0x10 |
NDIS_BUGCHECK_PM_INIT_FAILED_NO_INT_DEREGISTER Dopo la ripresa da uno stato a basso consumo, l'inizializzazione di un driver miniport non è riuscita senza registrarne l'interruzione. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del NDIS_MINIPORT_INTERRUPT |
0 |
0x11 |
NDIS_BUGCHECK_PM_INIT_FAILED_NO_CANCEL_TIMER Dopo la ripresa da uno stato a basso consumo, l'inizializzazione di un driver miniport ha avuto esito negativo senza annullare correttamente tutti i timer. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo della coda timer del driver miniport (NDIS_MINIPORT_TIMER) |
0 |
0x12 |
NDIS_BUGCHECK_NFILTER_RECVD_PACKET_BAD_REF_COUNT Un driver miniport ha indicato che ha ricevuto un pacchetto usando un descrittore di pacchetti attualmente in uso dallo stack di protocolli. Rilevato controllando il conteggio dei riferimenti ai pacchetti. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del descrittore di pacchetti utilizzato dal driver. Per altre informazioni, eseguire !ndiskd.pkt con questo indirizzo. |
Indirizzo della matrice di pacchetti che conteneva questo descrittore di pacchetti |
0x13 |
NDIS_BUGCHECK_TFILTER_RECVD_PACKET_BAD_REF_COUNT Un driver miniport Token-Ring ha indicato che ha ricevuto un pacchetto usando un descrittore di pacchetti attualmente in uso dallo stack di protocolli. Rilevato controllando il conteggio dei riferimenti ai pacchetti. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
Indirizzo del descrittore di pacchetti utilizzato dal driver. Per altre informazioni, eseguire !ndiskd.pkt con questo indirizzo. |
Indirizzo della matrice di pacchetti che conteneva questo descrittore di pacchetti |
0x14 |
NDIS_BUGCHECK_WAIT_EVENT_HIGH_IRQL Un driver NDIS chiamato NdisWaitEvent in un IRQL non valido |
IrQL effettivo |
0 |
0 |
0x15 |
NDIS_BUGCHECK_INVALID_NDIS5_CALL Un driver miniport denominato API riservata ai driver meno recenti. Il driver deve chiamare solo le API NDIS 6.x. |
Indirizzo del blocco adattatore miniport specifico. Per altre informazioni, eseguire !ndiskd.netadapter con questo indirizzo. |
0 |
0 |
0x16 |
NDIS_BUGCHECK_INVALID_OPEN_IN_BIND_CONTEXT Un driver di protocollo ha aperto in modo non corretto un adattatore durante l'associazione. |
Indirizzo del protocollo specifico. Per altre informazioni, eseguire !ndiskd.protocol con questo indirizzo. |
Indirizzo dell'area di contesto allocata dal driver del protocollo. Cast a ndis! NDIS_BIND_CONTEXT. |
Indirizzo dell'handle aperto. Per altre informazioni, eseguire !ndiskd.mopen con questo indirizzo. |
0x17 |
NDIS_BUGCHECK_IFPROVIDER_DEREGISTER_UNEXPECTED Provider di interfaccia denominato NdisIfDeregisterProvider senza prima rimuovere tutte le relative interfacce. |
Indirizzo dell'handle del provider di interfaccia. Per altre informazioni, eseguire !ndiskd.ifprovider con questo indirizzo. |
0 |
0 |
0x1B |
NDIS_BUGCHECK_IF_STACK_TABLE_LOOP Un driver ha tentato di aggiungere un'interfaccia a ifStackTable, ma questa operazione provocherebbe un ciclo. IfStackTable non deve avere cicli. Eseguire !ndiskd.ifstacktable per visualizzare la tabella corrente (prima di questa chiamata a NdisIfAddIfStackEntry). |
Oggetto HigherLayerIfIndex aggiunto alla tabella |
LowerLayerIfIndex aggiunto alla tabella |
0 |
0x1C |
NDIS_BUGCHECK_MINIPORT_FAILED_OID_WHICH_MUST_SUCCEED Un driver miniport ha avuto esito negativo su una richiesta OID che non deve avere esito negativo. In questo modo si perderebbe memoria o altre risorse. |
Indirizzo del blocco di adattatori miniport specifico. Eseguire !ndiskd.netadapter con questo indirizzo per altre informazioni. |
OID non riuscito. Usare !ndiskd.help per trovare il nome di questo OID. |
Codice di stato di errore (NDIS_STATUS_XXX) con cui è stata completata la richiesta OID |
0x1D |
NDIS_BUGCHECK_OID_REQUEST_INVALID_BUFFER Un driver miniport o un driver di filtro ha completato una richiesta OID illegalmente. Verificare che BytesWritten non sia maggiore dell'intera lunghezza del buffer. |
Indirizzo dell'adattatore miniport specifico o del blocco del modulo di filtro. Eseguire !ndiskd.netadapter o !ndiskd.filter con questo indirizzo per altre informazioni. |
Indirizzo del NDIS_OID_REQUEST completato illegalmente. Controllarlo con !ndiskd.oid. |
0 |
0x1E |
NDIS_BUGCHECK_REFCOUNT_IMBALANCE NDIS ha rilevato un errore in un refcount interno. Ciò può essere causato da un sottoflow di refcount (più dereferenze rispetto ai riferimenti) o da una mancata corrispondenza dei tag. |
0 |
Handle interno. Usare !ndiskd.ndisref o eseguire il cast in ndis! NDIS_REFCOUNT_BLOCK. |
Valore di reftag corrente |
0x1F |
NDIS_BUGCHECK_ILLEGAL_MINIPORT_STATE_TRANSITION Un driver miniport ha completato una transizione dello stato illegalmente. |
Cosa non è riuscito. Valori possibili:
|
Indirizzo del blocco di adattatori miniport specifico. Eseguire !ndiskd.netadapter con questo indirizzo per altre informazioni. |
0 |
0x20 |
NDIS_BUGCHECK_STATUS_INDICATION_INVALID_BUFFER Un driver miniport o un driver di filtro indica un NDIS_STATUS_INDICATION illegale. |
Tipo dell'indicazione dello stato. Eseguire !ndiskd.help con questo codice per altre informazioni. |
Handle dell'istanza del driver che indicava questa indicazione di stato non valida. Eseguire !ndiskd.netadapter o !ndiskd.filter con questo handle per altre informazioni. |
Indirizzo del payload di indicazione dello stato. La sua interpretazione dipende dal tipo di indicazione dello stato. |
0x21 |
NDIS_BUGCHECK_INVALID_OBJECT_HEADER Un driver ha creato un NDIS_OBJECT_HEADER non valido. |
Handle del conducente che indicava l'indicazione di stato illegale. Eseguire !ndiskd.minidriver o !ndiskd.filterdriver con questo handle per altre informazioni. |
Oggetto con l'intestazione non formattata. L'interpretazione dipende dall'API chiamata. Ad esempio, se il driver denominato NdisAllocateCloneOidRequest, eseguire il cast dell'oggetto in ndis! NDIS_OID_REQUEST. |
0 |
0x22 |
NDIS_BUGCHECK_ILLEGAL_NET_PNP_EVENT Un driver miniport o un driver di filtro ha indicato un NET_PNP_EVENT_NOTIFICATION illegale. |
Handle del conducente che indicava l'indicazione di stato illegale. Eseguire !ndiskd.minidriver o !ndiskd.filterdriver con questo handle per altre informazioni. |
Eseguire il cast in NET_PNP_EVENT_NOTIFICATION |
0 |
0x23 |
NDIS_BUGCHECK_PD_ERROR È stato rilevato un errore nel percorso dati Direct del pacchetto. |
Sottotipo del controllo bug. Valori possibili:
|
Il valore di Parametro 3 dipende dal valore di Parametro 2. Ogni numero in questo elenco corrisponde allo stesso numero nel parametro 2.
|
Il valore di Parametro 4 dipende dal valore di Parametro 2. Ogni numero in questo elenco corrisponde allo stesso numero nel parametro 2.
|
0x24 |
NDIS_BUGCHECK_UNEXPECTED_FAILURE Un'operazione interna non è riuscita in modo imprevisto. È probabile che si tratta di un bug in NDIS.SYS stesso. |
Operazione non riuscita. Valori possibili: 0x01 : NDIS_BUGCHECK_UNEXPECTED_FAILURE_KEWAITFORSINGLEOBJECT Chiamata a KeWaitForSingleObject non riuscita. |
Codice di stato dell'errore |
0 |
0x25 |
NDIS_BUGCHECK_WATCHDOG Un tentativo di gestire lo stack di rete ha richiesto troppo tempo. Quando NDIS chiama altri driver, NDIS avvia un timer watchdog per assicurarsi che la chiamata venga completata tempestivamente. Se la chiamata richiede troppo tempo, NDIS inserisce un controllo di bug. Ciò può essere causato da un semplice deadlock. Guarda con "!stacks 2ndis" o simile per vedere se eventuali thread sembrano sospetti. Prestare particolare attenzione al PrimaryThread dal NDIS_WATCHDOG_TRIAGE_BLOCK. Ciò può essere causato dalla perdita di valori NBLs, nel qual caso !ndiskd.pendingnbls può essere utile. Verificare la presenza di IDE bloccati usando !ndiskd.oid. |
Operazione che ha richiesto troppo tempo. Valori possibili:
|
Cast a ndis! NDIS_WATCHDOG_TRIAGE_BLOCK. Campi utili:
|
Il valore del parametro 4 dipende dal valore del parametro 2. Ogni numero di questo elenco corrisponde allo stesso valore esadecimale nel parametro 2.
|
0x26 |
NDIS_BUGCHECK_INVALID_OID_COMPLETION Un driver miniport ha tentato di completare una richiesta OID che non è attualmente in sospeso sul driver miniport. Ciò può essere causato dal tentativo del driver di completare la stessa richiesta più volte. |
Handle del driver miniport che ha causato il controllo di bug. Eseguire !ndiskd.minidriver con questo handle per altre informazioni. |
L'OID NDIS richiedeva il completamento del driver miniport. È possibile provare a eseguire !ndiskd.oid con questa richiesta, ma la memoria potrebbe non essere valida a questo punto. |
0 |
0x27 |
NDIS_BUGCHECK_LEAKED_NBL Un driver ha persa una struttura NET_BUFFER_LIST . Controllare con !ndiskd.pendingnbls per visualizzare eventuali NNBLs ancora in sospeso in questo driver. |
Posizione in cui è stata rilevata la perdita. Valori possibili:
|
0 |
0 |
Causa
Il parametro 1 indica la causa specifica del controllo dei bug BUGCODE_NDIS_DRIVER.
Commenti
Il controllo bug BUGCODE_NDIS_DRIVER indendifica i problemi nei driver di rete. Spesso, il problema è causato da un driver miniport NDIS. È possibile ottenere un elenco completo dei driver miniport NDIS usando !ndiskd.netadapter. È possibile ottenere una panoramica generale dello stack di rete con !ndiskd.netreport.
Questo codice di controllo dei bug si verifica solo in Microsoft Windows Server 2003 e versioni successive di Windows. In Windows 2000 e Windows XP, il codice corrispondente è il controllo dei bug 0xD2 (BUGCODE_ID_DRIVER).