Risoluzione avanzata degli errori di arresto o schermata blu

Provare l'agente virtuale : consente di identificare e risolvere rapidamente i problemi di avvio comuni di Windows

Nota

Se non si è un agente di supporto o un professionista IT, sono disponibili informazioni più utili sui messaggi di errore di arresto ("schermata blu") in Risolvere gli errori della schermata blu.

Si applica a: Versioni supportate di Windows Server e Windows Client

Cosa causa gli errori di arresto?

Quando Windows rileva una condizione che compromette il funzionamento sicuro del sistema, il sistema si arresta. Gli esempi includono un errore che potrebbe compromettere la sicurezza o causare il danneggiamento del sistema operativo e/o dei dati utente. Quando il computer si arresta per impedire al sistema operativo di andare avanti in queste condizioni, viene chiamato controllo dei bug (o controllo dei bug). È anche comunemente indicato come un arresto anomalo del sistema, un errore del kernel, una schermata blu, una schermata blu della morte (BSOD) o un errore di arresto. Nelle versioni di anteprima di Windows, il colore dello schermo può essere verde, portando allo schermo verde della morte (GSOD).

Non esiste una spiegazione semplice per la causa degli errori di arresto. Possono essere coinvolti molti fattori diversi. L'analisi delle cause radice degli arresti anomali indica che:

  • Il 70% è causato da codice driver di terze parti.
  • Il 10% è causato da problemi hardware.
  • Il 5% è causato dal codice Microsoft.
  • Il 15% ha cause sconosciute, perché la memoria è troppo danneggiata per l'analisi.

Nota

La causa radice degli errori di arresto è raramente un processo in modalità utente. Anche se un processo in modalità utente (ad esempio Blocco note o Slack) può attivare un errore di arresto, in genere espone il problema sottostante in un driver, hardware o sistema operativo.

Procedura generale per la risoluzione dei problemi

Per risolvere i problemi relativi ai messaggi di errore di arresto, seguire questa procedura generale:

  1. Esaminare il codice di errore di arresto trovato nei log eventi. Cercare online i codici di errore di arresto specifici per verificare se sono presenti problemi noti, soluzioni o soluzioni alternative per il problema.

  2. Assicurarsi di installare gli aggiornamenti di Windows più recenti, gli aggiornamenti cumulativi e gli aggiornamenti cumulativi. Per verificare lo stato dell'aggiornamento, fare riferimento alla cronologia degli aggiornamenti appropriata per il sistema. Ad esempio:

  3. Assicurarsi che il BIOS e il firmware siano aggiornati.

  4. Eseguire tutti i test relativi all'hardware e alla memoria.

  5. Eseguire Microsoft Safety Scanner o qualsiasi altro programma di rilevamento di virus che include controlli del MBR per le infezioni.

  6. Assicurarsi che lo spazio disponibile sul disco rigido sia sufficiente. Il requisito esatto varia, ma è consigliabile uno spazio libero su disco del 10-15%.

  7. Contattare il rispettivo fornitore di hardware o software per aggiornare i driver e le applicazioni negli scenari seguenti:

    • Il messaggio di errore indica che il problema è causato da un driver specifico.
    • Viene visualizzata un'indicazione di un servizio che viene avviato o arrestato prima dell'arresto anomalo. In questa situazione, determinare se il comportamento del servizio è coerente in tutte le istanze dell'arresto anomalo del sistema.
    • Sono state apportate modifiche software o hardware.

    Nota

    Se non sono disponibili aggiornamenti da un produttore specifico, è consigliabile disabilitare il servizio correlato.

    Per altre informazioni, vedere Come eseguire un avvio pulito in Windows.

    È possibile disabilitare un driver seguendo la procedura descritta in Come disattivare temporaneamente il driver di filtro in modalità kernel in Windows.

    È anche possibile prendere in considerazione l'opzione di rollback delle modifiche o di ripristino dell'ultimo stato di lavoro noto. Per altre informazioni, vedere Eseguire il rollback di un driver di dispositivo a una versione precedente.

Raccolta di dump di memoria

Per configurare il sistema per i file di dump della memoria, seguire questa procedura:

  1. Selezionare la casella di ricerca della barra delle applicazioni, digitare Impostazioni di sistema avanzate e quindi premere INVIO.
  2. Nella scheda Avanzate della casella Proprietà sistema selezionare il pulsante Impostazioni visualizzato nella sezione Avvio e ripristino.
  3. Nella nuova finestra selezionare l'elenco a discesa sotto l'opzione Scrivi informazioni di debug.
  4. Scegliere Dump automatico della memoria.
  5. Selezionare OK.
  6. Riavviare il computer per rendere effettiva l'impostazione.
  7. Se il server è virtualizzato, disabilitare il riavvio automatico dopo la creazione del file di dump della memoria. Questa disabilitazione consente di creare uno snapshot del server nello stato e anche se il problema si ripete.

Il file di dump della memoria viene salvato nei percorsi seguenti:

Tipo di file di dump Posizione
(nessuno) %SystemRoot%\MEMORY. DMP (inattivo o disattivato)
File dump di memoria di piccole dimensioni (256 kb) %SystemRoot%\Minidump
File di dump della memoria del kernel %SystemRoot%\MEMORY. DMP
Completare il file di dump della memoria %SystemRoot%\MEMORY. DMP
File di dump automatico della memoria %SystemRoot%\MEMORY. DMP
File di dump della memoria attiva %SystemRoot%\MEMORY. DMP

È possibile usare lo strumento Microsoft Crash Dump File Checker (DumpChk) per verificare che i file di dump della memoria non siano danneggiati o non validi. Per altre informazioni, vedere il video seguente:

Per altre informazioni su come usare Dumpchk.exe per controllare i file di dump, vedere gli articoli seguenti:

Impostazioni del file di pagina

Per altre informazioni sulle impostazioni del file di pagina, vedere gli articoli seguenti:

Analisi del dump della memoria

Trovare la causa radice dell'arresto anomalo potrebbe non essere facile. I problemi hardware sono particolarmente difficili da diagnosticare perché possono causare comportamenti irregolari e imprevedibili che possono manifestarsi in vari sintomi.

Quando si verifica un errore di arresto, è necessario innanzitutto isolare i componenti problematici e quindi provare a attivarli di nuovo. Se è possibile replicare il problema, è in genere possibile determinarne la causa.

È possibile usare strumenti come Windows Software Development Kit (Windows SDK) (SDK) e simboli per diagnosticare i log di dump. Nella sezione successiva viene illustrato come usare questo strumento.

Procedura avanzata per la risoluzione dei problemi

Nota

La risoluzione avanzata dei problemi dei dump di arresto anomalo può essere molto complessa se non si ha familiarità con la programmazione e i meccanismi interni di Windows. Si è tentato di fornire una breve panoramica di alcune tecniche usate, inclusi alcuni esempi. Tuttavia, per essere davvero efficace nella risoluzione dei problemi di un dump di arresto anomalo, è consigliabile acquisire familiarità con le tecniche di debug avanzate. Per una panoramica video, il debug della modalità kernel si arresta in modo anomalo e si blocca. Vedere anche i riferimenti avanzati elencati di seguito.

Riferimenti al debug avanzato

Procedura di debug

  1. Verificare che il computer sia configurato per generare un file dump di memoria completo quando si verifica un arresto anomalo del sistema. Per altre informazioni, vedere Metodo 1: Dump della memoria.

  2. Individuare il file memory.dmp nella directory di Windows nel computer che si arresta in modo anomalo e copiarlo in un altro computer.

  3. Nell'altro computer scaricare l'SDK Windows 10.

  4. Avviare l'installazione e scegliere Strumenti di debug per Windows. Lo strumento WinDbg è installato.

  5. Passare al menu File e selezionare Percorso file di simboli per aprire lo strumento WinDbg e impostare il percorso del simbolo.

    1. Se il computer è connesso a Internet, immettere il server https://msdl.microsoft.com/download/symbols di simboli pubblici Microsoft e selezionare OK. Questo metodo è consigliato.
    2. Se il computer non è connesso a Internet, specificare un percorso di simbolo locale.
  6. Selezionare Apri dump di arresto anomalo e quindi aprire il file memory.dmp copiato.

    Screenshot di un output di esempio in WinDbg quando si apre un file dump di arresto anomalo del sistema.

  7. In Analisi controllo bug selezionare !analyze -v. Il comando !analyze -v viene immesso nel prompt nella parte inferiore della pagina.

  8. Viene visualizzata un'analisi dettagliata del controllo dei bug.

    Screenshot di un esempio dettagliato di analisi del controllo dei bug.

  9. Scorrere verso il basso fino alla sezione STACK_TEXT . Ci saranno righe di numeri con ogni riga seguita da due punti e testo. Il testo dovrebbe indicare la DLL che causa l'arresto anomalo. Se applicabile, indica anche quale servizio sta arrestando in modo anomalo la DLL.

  10. Per altre informazioni su come interpretare l'output STACK_TEXT, vedere Uso dell'estensione !analyze.

Esistono molte possibili cause di un controllo dei bug e ogni caso è univoco. Nell'esempio precedente, le righe importanti che possono essere identificate dal STACK_TEXT sono 20, 21 e 22:

Nota

I dati HEX vengono rimossi qui e le righe sono numerato per maggiore chiarezza.

1  : nt!KeBugCheckEx
2  : nt!PspCatchCriticalBreak+0xff
3  : nt!PspTerminateAllThreads+0x1134cf
4  : nt!PspTerminateProcess+0xe0
5  : nt!NtTerminateProcess+0xa9
6  : nt!KiSystemServiceCopyEnd+0x13
7  : nt!KiServiceLinkage
8  : nt!KiDispatchException+0x1107fe
9  : nt!KiFastFailDispatch+0xe4
10 : nt!KiRaiseSecurityCheckFailure+0x3d3
11 : ntdll!RtlpHpFreeWithExceptionProtection$filt$0+0x44
12 : ntdll!_C_specific_handler+0x96
13 : ntdll!RtlpExecuteHandlerForException+0xd
14 : ntdll!RtlDispatchException+0x358
15 : ntdll!KiUserExceptionDispatch+0x2e
16 : ntdll!RtlpHpVsContextFree+0x11e
17 : ntdll!RtlpHpFreeHeap+0x48c
18 : ntdll!RtlpHpFreeWithExceptionProtection+0xda
19 : ntdll!RtlFreeHeap+0x24a
20 : FWPolicyIOMgr!FwBinariesFree+0xa7c2
21 : mpssvc!FwMoneisDiagEdpPolicyUpdate+0x1584f
22 : mpssvc!FwEdpMonUpdate+0x6c
23 : ntdll!RtlpWnfWalkUserSubscriptionList+0x29b
24 : ntdll!RtlpWnfProcessCurrentDescriptor+0x105
25 : ntdll!RtlpWnfNotificationThread+0x80
26 : ntdll!TppExecuteWaitCallback+0xe1
27 : ntdll!TppWorkerThread+0x8d0
28 : KERNEL32!BaseThreadInitThunk+0x14
29 : ntdll!RtlUserThreadStart+0x21

Questo problema è dovuto al servizio mpssvc, che è un componente di Windows Firewall. Il problema è stato risolto disabilitando temporaneamente il firewall e quindi reimpostando i criteri del firewall.

Per altri esempi, vedere Debug di esempi.

Risorse video

I video seguenti illustrano varie tecniche di risoluzione dei problemi per l'analisi dei file di dump.

Risoluzione avanzata dei problemi con Driver Verifier

Si stima che circa il 75% di tutti gli errori di arresto siano causati da driver difettosi. Lo strumento Driver Verifier offre diversi metodi per semplificare la risoluzione dei problemi. Questi includono l'esecuzione di driver in un pool di memoria isolato (senza condividere memoria con altri componenti), la generazione di una pressione di memoria estrema e la convalida dei parametri. Se lo strumento rileva errori nell'esecuzione del codice del driver, crea in modo proattivo un'eccezione. Può quindi esaminare ulteriormente tale parte del codice.

Avviso

Driver Verifier usa una grande quantità di CPU e può rallentare in modo significativo il computer. È anche possibile che si verifichino arresti anomali aggiuntivi. Verifica disabilita i driver difettosi dopo che si è verificato un errore di arresto e continua a eseguire questa operazione fino a quando non è possibile riavviare correttamente il sistema e accedere al desktop. È anche possibile prevedere la creazione di diversi file di dump.

Non provare a verificare tutti i driver contemporaneamente. Questa azione può ridurre le prestazioni e rendere il sistema inutilizzabile. Limita anche l'efficacia dello strumento.

Usare le linee guida seguenti quando si usa Driver Verifier:

  • Testare eventuali driver "sospetti". Ad esempio, i driver che sono stati aggiornati di recente o che sono noti per essere problematici.
  • Se si continuano a riscontrare arresti anomali non analizzabili, provare ad abilitare la verifica su tutti i driver di terze parti e non firmati.
  • Abilitare la verifica simultanea in gruppi di 10-20 driver.
  • Inoltre, se il computer non può essere avviato nel desktop a causa di Driver Verifier, è possibile disabilitare lo strumento avviando la modalità provvisoria. Questa soluzione è dovuta al fatto che lo strumento non può essere eseguito in modalità provvisoria.

Per altre informazioni, vedere Driver Verifier.

Errori di arresto comuni di Windows

Questa sezione non contiene un elenco di tutti i codici di errore, ma poiché molti codici di errore hanno le stesse possibili risoluzioni, la soluzione migliore consiste nel seguire la procedura seguente per risolvere l'errore. Per un elenco completo dei codici di errore di arresto, vedere Informazioni di riferimento sul codice di controllo dei bug.

Le sezioni seguenti elencano le procedure di risoluzione dei problemi generali per i codici di errore di arresto comuni.

VIDEO_ENGINE_TIMEOUT_DETECTED o VIDEO_TDR_TIMEOUT_DETECTED

Arrestare il 0x00000141 del codice di errore o 0x00000117

Contattare il fornitore del driver visualizzato elencato per ottenere un aggiornamento appropriato per tale driver.

DRIVER_IRQL_NOT_LESS_OR_EQUAL

Arrestare il 0x0000000D1 del codice di errore

Applicare gli aggiornamenti più recenti per il driver applicando gli aggiornamenti cumulativi più recenti per il sistema tramite il sito Web di Microsoft Update Catalog. Aggiornare un driver di rete obsoleto. I sistemi VMware virtualizzati eseguono spesso "Intel(R) PRO/1000 MT Network Connection" (e1g6032e.sys). È possibile scaricare questo driver dal sito Web Intel Download Drivers & Software. Contattare il fornitore dell'hardware per aggiornare il driver di rete per una risoluzione. Per i sistemi VMware, usare il driver di rete integrato VMware anziché il e1g6032e.sys di Intel. Ad esempio, usare i tipi VMware VMXNET, VMXNET2 o VMXNET3.

PAGE_FAULT_IN_NONPAGED_AREA

Arrestare il 0x000000050 del codice di errore

Se un driver viene identificato nel messaggio di errore di arresto, contattare il produttore per un aggiornamento. Se non sono disponibili aggiornamenti, disabilitare il driver e monitorare il sistema per la stabilità. Eseguire chkdsk /f /r per rilevare e correggere gli errori del disco. Riavviare il sistema prima dell'avvio dell'analisi del disco in una partizione di sistema. Contattare il produttore per eventuali strumenti di diagnostica che possono fornire per il sottosistema del disco rigido. Provare a reinstallare qualsiasi applicazione o servizio installato o aggiornato di recente. È possibile che l'arresto anomalo sia stato attivato mentre il sistema avviava le applicazioni e leggeva il Registro di sistema per le impostazioni delle preferenze. La reinstallazione dell'applicazione può correggere le chiavi del Registro di sistema danneggiate. Se il problema persiste ed è stato eseguito un backup recente dello stato del sistema, provare a ripristinare gli hive del Registro di sistema dal backup.

SYSTEM_SERVICE_EXCEPTION

Stop error code c000021a {Fatal System Error} The Windows SubSystem system process terminated unexpectedly with a status of 0xc0000005.Stop error code c000021a {Fatal System Error} The Windows SubSystem system process terminated unexpectedly with a status of 0xc0000005. Il sistema è stato chiuso.

Usare lo strumento Controllo file di sistema per ripristinare i file di sistema mancanti o danneggiati. Controllo file di sistema consente agli utenti di analizzare i danneggiamenti nei file di sistema di Windows e ripristinare i file danneggiati. Per altre informazioni, vedere Usare lo strumento Controllo file di sistema.

NTFS_FILE_SYSTEM

Arrestare il 0x000000024 del codice di errore

Questo errore di arresto è in genere causato dal danneggiamento nel file system NTFS o da blocchi non validi (settori) nel disco rigido. Anche i driver danneggiati per i dischi rigidi (SATA o IDE) possono influire negativamente sulla capacità del sistema di leggere e scrivere su disco. Eseguire qualsiasi diagnostica hardware fornita dal produttore del sottosistema di archiviazione. Usare lo strumento di analisi del disco per verificare che non siano presenti errori del file system. Per eseguire questo passaggio, fare clic con il pulsante destro del mouse sull'unità da analizzare, selezionare Proprietà, selezionare Strumenti e quindi selezionare il pulsante Controlla ora. Aggiornare il driver del file system NTFS (Ntfs.sys). Applicare gli aggiornamenti cumulativi più recenti per il sistema operativo corrente che sta riscontrando il problema.

KMODE_EXCEPTION_NOT_HANDLED

Arrestare il 0x0000001E del codice di errore

Se un driver è identificato nel messaggio di errore di arresto, disabilitare o rimuovere tale driver. Disabilitare o rimuovere eventuali driver o servizi aggiunti di recente.

Se l'errore si verifica durante la sequenza di avvio e la partizione di sistema è formattata usando il file system NTFS, potrebbe essere possibile usare la modalità provvisoria per disabilitare il driver in Gestione dispositivi. Per disabilitare il driver, seguire questa procedura:

  1. Passare a Aggiornamento impostazioni>& sicurezza>Ripristino.
  2. In Avvio avanzato selezionare Riavvia ora.
  3. Dopo il riavvio del PC nella schermata Scegliere un'opzione, selezionare Risoluzione dei problemi>Opzioni> avanzateImpostazioni> di avvioRiavvia.
  4. Dopo il riavvio del computer, verrà visualizzato un elenco di opzioni. Premere 4 o F4 per avviare il computer in modalità provvisoria. Se si intende usare Internet in modalità provvisoria, premere 5 o F5 per l'opzione Modalità provvisoria con rete .

DPC_WATCHDOG_VIOLATION

Arrestare il 0x00000133 del codice di errore

Questo codice di errore di arresto è causato da un driver difettoso che non completa il lavoro entro l'intervallo di tempo assegnato in determinate condizioni. Per ridurre questo errore, raccogliere il file di dump della memoria dal sistema e quindi usare Il debugger di Windows per trovare il driver difettoso. Se un driver viene identificato nel messaggio di errore di arresto, disabilitare il driver per isolare il problema. Rivolgersi al produttore per gli aggiornamenti del driver. Controllare l'accesso di sistema Visualizzatore eventi per altri messaggi di errore che potrebbero aiutare a identificare il dispositivo o il driver che causa l'errore di arresto 0x133. Verificare che qualsiasi nuovo hardware installato sia compatibile con la versione installata di Windows. Ad esempio, è possibile ottenere informazioni sull'hardware richiesto in Specifiche Windows 10. Se Debugger Windows è installato e si ha accesso ai simboli pubblici, è possibile caricare il file c:\windows\memory.dmp nel debugger. Fare quindi riferimento a Determinazione dell'origine degli errori 0x133 di controllo dei bug (DPC_WATCHDOG_VIOLATION) in Windows Server 2012 per trovare il driver problematico dal dump della memoria.

USER_MODE_HEALTH_MONITOR

Arrestare il 0x0000009E del codice di errore

Questo errore di arresto indica che un controllo integrità in modalità utente non è riuscito in modo da impedire l'arresto normale. Windows ripristina i servizi critici riavviando o abilitando il failover dell'applicazione in altri server. Il servizio Clustering incorpora un meccanismo di rilevamento che può rilevare la mancata risposta nei componenti in modalità utente.

Questo errore di arresto si verifica in genere in un ambiente cluster e il driver difettoso indicato viene RHS.exe. Controllare la presenza di eventuali errori di archiviazione nei log eventi per identificare il processo non riuscito. Provare ad aggiornare il componente o il processo indicato nei log eventi. Verrà registrato l'evento seguente:

  • ID evento: 4870
  • Origine: Microsoft-Windows-FailoverClustering
  • Descrizione: il monitoraggio dell'integrità in modalità utente ha rilevato che il sistema non è reattivo. La scheda virtuale del cluster di failover ha perso il contatto con il processo del server cluster con un ID processo '%1', per '%2' secondi. Viene eseguita un'azione di ripristino. Esaminare i log del cluster per identificare il processo e verificare quali elementi potrebbero causare il blocco del processo.

Per altre informazioni, vedere "0x0000009E" Stop error on cluster nodes in a Windows Server-based multi-node failover cluster environment (Errore di arresto dei nodi del cluster in un ambiente cluster di failover multinodi basato su Windows Server ). Vedere anche il video Microsoft seguente What to do if a 9E occurs.for more information, see the following Microsoft video What to do if a 9E occurs.

Esempi di debug

Esempio 1

Questo controllo dei bug è causato da un blocco del driver durante l'aggiornamento, con conseguente controllo del bug D1 in NDIS.sys, che è un driver Microsoft. Il IMAGE_NAME indica il driver di errore, ma poiché questo driver è microsoft, non può essere sostituito o rimosso. Il metodo di risoluzione consiste nel disabilitare il dispositivo di rete in Gestione dispositivi e riprovare l'aggiornamento.

2: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 000000000011092a, memory referenced
Arg2: 0000000000000002, IRQL
Arg3: 0000000000000001, value 0 = read operation, 1 = write operation
Arg4: fffff807aa74f4c4, address which referenced memory
Debugging Details:
------------------

KEY_VALUES_STRING: 1
STACKHASH_ANALYSIS: 1
TIMELINE_ANALYSIS: 1
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
SIMULTANEOUS_TELSVC_INSTANCES:  0
SIMULTANEOUS_TELWP_INSTANCES:  0
BUILD_VERSION_STRING:  16299.15.amd64fre.rs3_release.170928-1534
SYSTEM_MANUFACTURER:  Alienware
SYSTEM_PRODUCT_NAME:  Alienware 15 R2
SYSTEM_SKU:  Alienware 15 R2
SYSTEM_VERSION:  1.2.8
BIOS_VENDOR:  Alienware
BIOS_VERSION:  1.2.8
BIOS_DATE:  01/29/2016
BASEBOARD_MANUFACTURER:  Alienware
BASEBOARD_PRODUCT:  Alienware 15 R2
BASEBOARD_VERSION:  A00
DUMP_TYPE:  2
BUGCHECK_P1: 11092a
BUGCHECK_P2: 2
BUGCHECK_P3: 1
BUGCHECK_P4: fffff807aa74f4c4
WRITE_ADDRESS: fffff80060602380: Unable to get MiVisibleState
Unable to get NonPagedPoolStart
Unable to get NonPagedPoolEnd
Unable to get PagedPoolStart
Unable to get PagedPoolEnd
000000000011092a 
CURRENT_IRQL:  2
FAULTING_IP: 
NDIS!NdisQueueIoWorkItem+4 [minio\ndis\sys\miniport.c @ 9708]
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx
CPU_COUNT: 8
CPU_MHZ: a20
CPU_VENDOR:  GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 5e
CPU_STEPPING: 3
CPU_MICROCODE: 6,5e,3,0 (F,M,S,R)  SIG: BA'00000000 (cache) BA'00000000 (init)
BLACKBOXPNP: 1 (!blackboxpnp)
DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT
BUGCHECK_STR:  AV
PROCESS_NAME:  System
ANALYSIS_SESSION_HOST:  SHENDRIX-DEV0
ANALYSIS_SESSION_TIME:  01-17-2019 11:06:05.0653
ANALYSIS_VERSION: 10.0.18248.1001 amd64fre
TRAP_FRAME:  ffffa884c0c3f6b0 -- (.trap 0xffffa884c0c3f6b0)
NOTE: The trap frame doesn't contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff807ad018bf0 rbx=0000000000000000 rcx=000000000011090a
rdx=fffff807ad018c10 rsi=0000000000000000 rdi=0000000000000000
rip=fffff807aa74f4c4 rsp=ffffa884c0c3f840 rbp=000000002408fd00
r8=ffffb30e0e99ea30  r9=0000000001d371c1 r10=0000000020000080
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei ng nz na pe nc
NDIS!NdisQueueIoWorkItem+0x4:
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx ds:00000000`0011092a=????????????????
Resetting default scope

LAST_CONTROL_TRANSFER:  from fffff800603799e9 to fffff8006036e0e0

STACK_TEXT:  
ffffa884`c0c3f568 fffff800`603799e9 : 00000000`0000000a 00000000`0011092a 00000000`00000002 00000000`00000001 : nt!KeBugCheckEx [minkernel\ntos\ke\amd64\procstat.asm @ 134] 
ffffa884`c0c3f570 fffff800`60377d7d : fffff78a`4000a150 ffffb30e`03fba001 ffff8180`f0b5d180 00000000`000000ff : nt!KiBugCheckDispatch+0x69 [minkernel\ntos\ke\amd64\trap.asm @ 2998] 
ffffa884`c0c3f6b0 fffff807`aa74f4c4 : 00000000`00000002 ffff8180`f0754180 00000000`00269fb1 ffff8180`f0754180 : nt!KiPageFault+0x23d [minkernel\ntos\ke\amd64\trap.asm @ 1248] 
ffffa884`c0c3f840 fffff800`60256b63 : ffffb30e`0e18f710 ffff8180`f0754180 ffffa884`c0c3fa18 00000000`00000002 : NDIS!NdisQueueIoWorkItem+0x4 [minio\ndis\sys\miniport.c @ 9708] 
ffffa884`c0c3f870 fffff800`60257bfd : 00000000`00000008 00000000`00000000 00000000`00269fb1 ffff8180`f0754180 : nt!KiProcessExpiredTimerList+0x153 [minkernel\ntos\ke\dpcsup.c @ 2078] 
ffffa884`c0c3f960 fffff800`6037123a : 00000000`00000000 ffff8180`f0754180 00000000`00000000 ffff8180`f0760cc0 : nt!KiRetireDpcList+0x43d [minkernel\ntos\ke\dpcsup.c @ 1512] 
ffffa884`c0c3fb60 00000000`00000000 : ffffa884`c0c40000 ffffa884`c0c39000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x5a [minkernel\ntos\ke\amd64\idle.asm @ 166] 

RETRACER_ANALYSIS_TAG_STATUS:  Failed in getting KPCR for core 2
THREAD_SHA1_HASH_MOD_FUNC:  5b59a784f22d4b5cbd5a8452fe39914b8fd7961d
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  5643383f9cae3ca39073f7721b53f0c633bfb948
THREAD_SHA1_HASH_MOD:  20edda059578820e64b723e466deea47f59bd675
FOLLOWUP_IP: 
NDIS!NdisQueueIoWorkItem+4 [minio\ndis\sys\miniport.c @ 9708]
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx
FAULT_INSTR_CODE:  20518948
FAULTING_SOURCE_LINE:  minio\ndis\sys\miniport.c
FAULTING_SOURCE_FILE:  minio\ndis\sys\miniport.c
FAULTING_SOURCE_LINE_NUMBER:  9708
FAULTING_SOURCE_CODE:  
  9704:     _In_ _Points_to_data_      PVOID                       WorkItemContext
  9705:     )
  9706: {
  9707: 
> 9708:     ((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->Routine = Routine;
  9709:     ((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->WorkItemContext = WorkItemContext;
  9710: 
  9711:     IoQueueWorkItem(((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->IoWorkItem,
  9712:                     ndisDispatchIoWorkItem,
  9713:                     CriticalWorkQueue,

SYMBOL_STACK_INDEX:  3
SYMBOL_NAME:  NDIS!NdisQueueIoWorkItem+4
FOLLOWUP_NAME:  ndiscore
MODULE_NAME: NDIS
IMAGE_NAME:  NDIS.SYS
DEBUG_FLR_IMAGE_TIMESTAMP:  0
IMAGE_VERSION:  10.0.16299.99
DXGANALYZE_ANALYSIS_TAG_PORT_GLOBAL_INFO_STR:  Hybrid_FALSE
DXGANALYZE_ANALYSIS_TAG_ADAPTER_INFO_STR:  GPU0_VenId0x1414_DevId0x8d_WDDM1.3_Active;
STACK_COMMAND:  .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET:  4
FAILURE_BUCKET_ID:  AV_NDIS!NdisQueueIoWorkItem
BUCKET_ID:  AV_NDIS!NdisQueueIoWorkItem
PRIMARY_PROBLEM_CLASS:  AV_NDIS!NdisQueueIoWorkItem
TARGET_TIME:  2017-12-10T14:16:08.000Z
OSBUILD:  16299
OSSERVICEPACK:  98
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK:  784
PRODUCT_TYPE:  1
OSPLATFORM_TYPE:  x64
OSNAME:  Windows 10
OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS Personal
OS_LOCALE:  
USER_LCID:  0
OSBUILD_TIMESTAMP:  2017-11-26 03:49:20
BUILDDATESTAMP_STR:  170928-1534
BUILDLAB_STR:  rs3_release
BUILDOSVER_STR:  10.0.16299.15.amd64fre.rs3_release.170928-1534
ANALYSIS_SESSION_ELAPSED_TIME:  8377
ANALYSIS_SOURCE:  KM
FAILURE_ID_HASH_STRING:  km:av_ndis!ndisqueueioworkitem
FAILURE_ID_HASH:  {10686423-afa1-4852-ad1b-9324ac44ac96}
FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=10686423-afa1-4852-ad1b-9324ac44ac96
Followup:     ndiscore
---------

Esempio 2

In questo esempio, un driver non Microsoft ha causato un errore di pagina, quindi non sono presenti simboli per questo driver. Tuttavia, esaminando IMAGE_NAME e o MODULE_NAME indica che è WwanUsbMP.sys che ha causato il problema. Disconnettere il dispositivo e riprovare l'aggiornamento è una possibile soluzione.

1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced.  This can't be protected by try-except.
Typically the address is just plain bad or it is pointing at freed memory.
Arguments:
Arg1: 8ba10000, memory referenced.
Arg2: 00000000, value 0 = read operation, 1 = write operation.
Arg3: 82154573, If non-zero, the instruction address which referenced the bad memory
                address.
Arg4: 00000000, (reserved)

Debugging Details:
------------------

*** WARNING: Unable to verify timestamp for WwanUsbMp.sys
*** ERROR: Module load completed but symbols could not be loaded for WwanUsbMp.sys

KEY_VALUES_STRING: 1
STACKHASH_ANALYSIS: 1
TIMELINE_ANALYSIS: 1
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
BUILD_VERSION_STRING:  16299.15.x86fre.rs3_release.170928-1534
MARKER_MODULE_NAME:  IBM_ibmpmdrv
SYSTEM_MANUFACTURER:  LENOVO
SYSTEM_PRODUCT_NAME:  20AWS07H00
SYSTEM_SKU:  LENOVO_MT_20AW_BU_Think_FM_ThinkPad T440p
SYSTEM_VERSION:  ThinkPad T440p
BIOS_VENDOR:  LENOVO
BIOS_VERSION:  GLET85WW (2.39 )
BIOS_DATE:  09/29/2016
BASEBOARD_MANUFACTURER:  LENOVO
BASEBOARD_PRODUCT:  20AWS07H00
BASEBOARD_VERSION:  Not Defined
DUMP_TYPE:  2
BUGCHECK_P1: ffffffff8ba10000
BUGCHECK_P2: 0
BUGCHECK_P3: ffffffff82154573
BUGCHECK_P4: 0
READ_ADDRESS: 822821d0: Unable to get MiVisibleState
8ba10000 
FAULTING_IP: 
nt!memcpy+33 [minkernel\crts\crtw32\string\i386\memcpy.asm @ 213
82154573 f3a5            rep movs dword ptr es:[edi],dword ptr [esi]
MM_INTERNAL_CODE:  0
CPU_COUNT: 4
CPU_MHZ: 95a
CPU_VENDOR:  GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 3c
CPU_STEPPING: 3
CPU_MICROCODE: 6,3c,3,0 (F,M,S,R)  SIG: 21'00000000 (cache) 21'00000000 (init)
BLACKBOXBSD: 1 (!blackboxbsd)
BLACKBOXPNP: 1 (!blackboxpnp)
DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT
BUGCHECK_STR:  AV
PROCESS_NAME:  System
CURRENT_IRQL:  2
ANALYSIS_SESSION_HOST:  SHENDRIX-DEV0
ANALYSIS_SESSION_TIME:  01-17-2019 10:54:53.0780
ANALYSIS_VERSION: 10.0.18248.1001 amd64fre
TRAP_FRAME:  8ba0efa8 -- (.trap 0xffffffff8ba0efa8)
ErrCode = 00000000
eax=8ba1759e ebx=a2bfd314 ecx=00001d67 edx=00000002 esi=8ba10000 edi=a2bfe280
eip=82154573 esp=8ba0f01c ebp=8ba0f024 iopl=0         nv up ei pl nz ac pe nc
cs=0008  ss=0010  ds=0023  es=0023  fs=0030  gs=0000             efl=00010216
nt!memcpy+0x33:
82154573 f3a5            rep movs dword ptr es:[edi],dword ptr [esi]
Resetting default scope
LOCK_ADDRESS:  8226c6e0 -- (!locks 8226c6e0)
Cannot get _ERESOURCE type
Resource @ nt!PiEngineLock (0x8226c6e0)    Available
1 total locks
PNP_TRIAGE_DATA: 
                Lock address  : 0x8226c6e0
                Thread Count  : 0
                Thread address: 0x00000000
                Thread wait   : 0x0

LAST_CONTROL_TRANSFER:  from 82076708 to 821507e8

STACK_TEXT:  
8ba0ede4 82076708 00000050 8ba10000 00000000 nt!KeBugCheckEx [minkernel\ntos\ke\i386\procstat.asm @ 114] 
8ba0ee40 8207771e 8ba0efa8 8ba10000 8ba0eea0 nt!MiSystemFault+0x13c8 [minkernel\ntos\mm\mmfault.c @ 4755] 
8ba0ef08 821652ac 00000000 8ba10000 00000000 nt!MmAccessFault+0x83e [minkernel\ntos\mm\mmfault.c @ 6868] 
8ba0ef08 82154573 00000000 8ba10000 00000000 nt!_KiTrap0E+0xec [minkernel\ntos\ke\i386\trap.asm @ 5153] 
8ba0f024 86692866 a2bfd314 8ba0f094 0000850a nt!memcpy+0x33 [minkernel\crts\crtw32\string\i386\memcpy.asm @ 213] 
8ba0f040 866961bc 8ba0f19c a2bfd0e8 00000000 NDIS!ndisMSetPowerManagementCapabilities+0x8a [minio\ndis\sys\miniport.c @ 7969] 
8ba0f060 866e1f66 866e1caf adfb9000 00000000 NDIS!ndisMSetGeneralAttributes+0x23d [minio\ndis\sys\miniport.c @ 8198] 
8ba0f078 ac50c15f a2bfd0e8 0000009f 00000001 NDIS!NdisMSetMiniportAttributes+0x2b7 [minio\ndis\sys\miniport.c @ 7184] 
WARNING: Stack unwind information not available. Following frames may be wrong.
8ba0f270 ac526f96 adfb9000 a2bfd0e8 8269b9b0 WwanUsbMp+0x1c15f
8ba0f3cc 866e368a a2bfd0e8 00000000 8ba0f4c0 WwanUsbMp+0x36f96
8ba0f410 867004b0 a2bfd0e8 a2bfd0e8 a2be2a70 NDIS!ndisMInvokeInitialize+0x60 [minio\ndis\sys\miniport.c @ 13834] 
8ba0f7ac 866dbc8e a2acf730 866b807c 00000000 NDIS!ndisMInitializeAdapter+0xa23 [minio\ndis\sys\miniport.c @ 601] 
8ba0f7d8 866e687d a2bfd0e8 00000000 00000000 NDIS!ndisInitializeAdapter+0x4c [minio\ndis\sys\initpnp.c @ 931] 
8ba0f800 866e90bb adfb64d8 00000000 a2bfd0e8 NDIS!ndisPnPStartDevice+0x118 [minio\ndis\sys\configm.c @ 4235] 
8ba0f820 866e8a58 adfb64d8 a2bfd0e8 00000000 NDIS!ndisStartDeviceSynchronous+0xbd [minio\ndis\sys\ndispnp.c @ 3096] 
8ba0f838 866e81df adfb64d8 8ba0f85e 8ba0f85f NDIS!ndisPnPIrpStartDevice+0xb4 [minio\ndis\sys\ndispnp.c @ 1067] 
8ba0f860 820a7e98 a2bfd030 adfb64d8 8ba0f910 NDIS!ndisPnPDispatch+0x108 [minio\ndis\sys\ndispnp.c @ 2429] 
8ba0f878 8231f07e 8ba0f8ec adf5d4c8 872e2eb8 nt!IofCallDriver+0x48 [minkernel\ntos\io\iomgr\iosubs.c @ 3149] 
8ba0f898 820b8569 820c92b8 872e2eb8 8ba0f910 nt!PnpAsynchronousCall+0x9e [minkernel\ntos\io\pnpmgr\irp.c @ 3005] 
8ba0f8cc 820c9a76 00000000 820c92b8 872e2eb8 nt!PnpSendIrp+0x67 [minkernel\ntos\io\pnpmgr\irp.h @ 286] 
8ba0f914 8234577b 872e2eb8 adf638b0 adf638b0 nt!PnpStartDevice+0x60 [minkernel\ntos\io\pnpmgr\irp.c @ 3187] 
8ba0f94c 82346cc7 872e2eb8 adf638b0 adf638b0 nt!PnpStartDeviceNode+0xc3 [minkernel\ntos\io\pnpmgr\start.c @ 1712] 
8ba0f96c 82343c68 00000000 a2bdb3d8 adf638b0 nt!PipProcessStartPhase1+0x4d [minkernel\ntos\io\pnpmgr\start.c @ 114] 
8ba0fb5c 824db885 8ba0fb80 00000000 00000000 nt!PipProcessDevNodeTree+0x386 [minkernel\ntos\io\pnpmgr\enum.c @ 6129] 
8ba0fb88 8219571b 85852520 8c601040 8226ba90 nt!PiRestartDevice+0x91 [minkernel\ntos\io\pnpmgr\enum.c @ 4743] 
8ba0fbe8 820804af 00000000 00000000 8c601040 nt!PnpDeviceActionWorker+0xdb4b7 [minkernel\ntos\io\pnpmgr\action.c @ 674] 
8ba0fc38 8211485c 85852520 421de295 00000000 nt!ExpWorkerThread+0xcf [minkernel\ntos\ex\worker.c @ 4270] 
8ba0fc70 82166785 820803e0 85852520 00000000 nt!PspSystemThreadStartup+0x4a [minkernel\ntos\ps\psexec.c @ 7756] 
8ba0fc88 82051e07 85943940 8ba0fcd8 82051bb9 nt!KiThreadStartup+0x15 [minkernel\ntos\ke\i386\threadbg.asm @ 82] 
8ba0fc94 82051bb9 8b9cc600 8ba10000 8ba0d000 nt!KiProcessDeferredReadyList+0x17 [minkernel\ntos\ke\thredsup.c @ 5309] 
8ba0fcd8 00000000 00000000 00000000 00000000 nt!KeSetPriorityThread+0x249 [minkernel\ntos\ke\thredobj.c @ 3881] 


RETRACER_ANALYSIS_TAG_STATUS:  Failed in getting KPCR for core 1
THREAD_SHA1_HASH_MOD_FUNC:  e029276c66aea80ba36903e89947127118d31128
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  012389f065d31c8eedd6204846a560146a38099b
THREAD_SHA1_HASH_MOD:  44dc639eb162a28d47eaeeae4afe6f9eeccced3d
FOLLOWUP_IP: 
WwanUsbMp+1c15f
ac50c15f 8bf0            mov     esi,eax
FAULT_INSTR_CODE:  f33bf08b
SYMBOL_STACK_INDEX:  8
SYMBOL_NAME:  WwanUsbMp+1c15f
FOLLOWUP_NAME:  MachineOwner
MODULE_NAME: WwanUsbMp
IMAGE_NAME:  WwanUsbMp.sys
DEBUG_FLR_IMAGE_TIMESTAMP:  5211bb0c
DXGANALYZE_ANALYSIS_TAG_PORT_GLOBAL_INFO_STR:  Hybrid_FALSE
DXGANALYZE_ANALYSIS_TAG_ADAPTER_INFO_STR:  GPU0_VenId0x1414_DevId0x8d_WDDM1.3_NotActive;GPU1_VenId0x8086_DevId0x416_WDDM1.3_Active_Post;
STACK_COMMAND:  .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET:  1c15f
FAILURE_BUCKET_ID:  AV_R_INVALID_WwanUsbMp!unknown_function
BUCKET_ID:  AV_R_INVALID_WwanUsbMp!unknown_function
PRIMARY_PROBLEM_CLASS:  AV_R_INVALID_WwanUsbMp!unknown_function
TARGET_TIME:  2018-02-12T11:33:51.000Z
OSBUILD:  16299
OSSERVICEPACK:  15
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK:  272
PRODUCT_TYPE:  1
OSPLATFORM_TYPE:  x86
OSNAME:  Windows 10
OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS
OS_LOCALE:  
USER_LCID:  0
OSBUILD_TIMESTAMP:  2017-09-28 18:32:28
BUILDDATESTAMP_STR:  170928-1534
BUILDLAB_STR:  rs3_release
BUILDOSVER_STR:  10.0.16299.15.x86fre.rs3_release.170928-1534
ANALYSIS_SESSION_ELAPSED_TIME:  162bd
ANALYSIS_SOURCE:  KM
FAILURE_ID_HASH_STRING:  km:av_r_invalid_wwanusbmp!unknown_function
FAILURE_ID_HASH:  {31e4d053-0758-e43a-06a7-55f69b072cb3}
FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=31e4d053-0758-e43a-06a7-55f69b072cb3

Followup:     MachineOwner
---------

ReadVirtual: 812d1248 not properly sign extended

Riferimenti

Informazioni di riferimento sul codice di controllo dei bug