0x117 de vérification des bogues : VIDEO_TDR_TIMEOUT_DETECTED

Le vidage en direct VIDEO_TDR_TIMEOUT_DETECTED a une valeur de 0x00000117. Cela indique que le pilote d’affichage n’a pas pu répondre en temps voulu.

(Ce code ne peut jamais être utilisé pour une vérification réelle des bogues ; il est utilisé pour identifier les vidages en direct.)

Important

Cette rubrique s’adresse aux développeurs. Si vous êtes un client qui a reçu un code d’erreur d’écran bleu lors de l’utilisation de votre ordinateur, consultez Résoudre les erreurs d’écran bleu.

paramètres de VIDEO_TDR_TIMEOUT_DETECTED

Paramètre Description

1

Pointeur vers le contexte de récupération TDR interne, le cas échéant.

2

Pointeur vers le module de pilote de périphérique responsable (par exemple, la balise propriétaire).

3

Clé de compartimentage spécifique au pilote secondaire.

4

Données dépendantes du contexte interne, le cas échéant.

Cause

Un problème de stabilité courant dans les graphiques se produit lorsque le système apparaît complètement figé ou suspendu lors du traitement d’une commande ou d’une opération de l’utilisateur final. Généralement, le GPU est occupé à traiter des opérations graphiques intensives, généralement pendant le jeu. Aucune mise à jour d’écran ne se produit, et les utilisateurs supposent que leur système est figé. Les utilisateurs attendent généralement quelques secondes, puis redémarrent le système en appuyant sur le bouton d’alimentation. Windows tente de détecter ces situations de blocage problématiques et de récupérer dynamiquement un bureau réactif.

Ce processus de détection et de récupération est appelé Détection et récupération du délai d’expiration (TDR). Le délai d’expiration par défaut est de 2 secondes. Dans le processus TDR pour les cartes vidéo, le planificateur GPU du système d’exploitation appelle la fonction DxgkDdiResetFromTimeout du pilote DxgkDdiResetFromTimeout du pilote d’affichage pour réinitialiser le pilote et réinitialiser le GPU.

Si le processus de récupération réussit, un message s’affiche, indiquant que le pilote d’affichage a cessé de répondre et a récupéré.

Pour plus d’informations, consultez Timeout Detection and Recovery (TDR), TDR Registry Keys and TDR changes in Windows 8 qui se trouvent dans Timeout Detection and Recovery (TDR)

Résolution

Le GPU prend plus de temps que possible pour afficher des graphiques sur votre moniteur. Ce comportement peut être dû à différentes raisons :

  • Vous devrez peut-être installer les dernières mises à jour de votre pilote d’affichage afin qu’il prenne correctement en charge le processus TDR.
  • Problèmes matériels ayant un impact sur la capacité de la carte vidéo à fonctionner correctement, notamment :
    • Composants over-clocked, tels que la carte mère
    • Compatibilité et paramètres des composants incorrects (en particulier la configuration et le minutage de la mémoire)
    • Refroidissement système insuffisant
    • Alimentation système insuffisante
    • Pièces défectueuses (modules mémoire, cartes mères, etc.)
  • Les effets visuels, ou un trop grand nombre de programmes exécutés en arrière-plan peuvent ralentir votre PC afin que la carte vidéo ne puisse pas répondre si nécessaire.

L’extension !analyze debug affiche des informations sur la vérification des bogues et peut être utile pour déterminer la cause racine.

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

VIDEO_TDR_TIMEOUT_DETECTED (117)
The display driver failed to respond in timely fashion.
(This code can never be used for a real bug check; it is used to identify live dumps.)
Arguments:
Arg1: 8975d500, Optional pointer to internal TDR recovery context (TDR_RECOVERY_CONTEXT).
Arg2: 9a02381e, The pointer into responsible device driver module (e.g owner tag).
Arg3: 00000000, The secondary driver specific bucketing key.
Arg4: 00000000, Optional internal context dependent data.

...

Le nom du module d’erreur s’affiche également

MODULE_NAME: atikmpag

IMAGE_NAME:  atikmpag.sys

Vous pouvez utiliser la commande lmv pour afficher des informations sur le pilote défaillant, y compris l’horodatage.

3: kd> lmvm atikmpag
Browse full module list
start    end        module name
9a01a000 9a09a000   atikmpag T (no symbols)           
    Loaded symbol image file: atikmpag.sys
    Image path: atikmpag.sys
    Image name: atikmpag.sys
    Browse all global symbols  functions  data
    Timestamp:        Fri Dec  6 12:20:32 2013 (52A23190)
    CheckSum:         0007E58A
    ImageSize:        00080000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4

Le paramètre 1 contient un pointeur vers le TDR_RECOVERY_CONTEXT.

3: kd> dt dxgkrnl!_TDR_RECOVERY_CONTEXT fffffa8010041010
   +0x000 Signature        : ??
   +0x004 pState           : ???? 
   +0x008 TimeoutReason    : ??
   +0x010 Tick             : _ULARGE_INTEGER
   +0x018 pAdapter         : ???? 
   +0x01c pVidSchContext   : ???? 
   +0x020 GPUTimeoutData   : _TDR_RECOVERY_GPU_DATA
   +0x038 CrtcTimeoutData  : _TDR_RECOVERY_CONTEXT::<unnamed-type-CrtcTimeoutData>
   +0x040 DbgOwnerTag      : ??
   +0x048 PrivateDbgInfo   : _TDR_DEBUG_REPORT_PRIVATE_INFO
   +0xae0 pDbgReport       : ???? 
   +0xae4 pDbgBuffer       : ???? 
   +0xae8 DbgBufferSize    : ??
   +0xaec pDumpBufferHelper : ???? 
   +0xaf0 pDbgInfoExtension : ???? 
   +0xaf4 pDbgBufferUpdatePrivateInfo : ???? 
   +0xaf8 ReferenceCount   : ??
Memory read error 10041b08

Le paramètre 2 contient un pointeur vers le module de pilote de périphérique responsable (par exemple, la balise propriétaire).

BUGCHECK_P2: ffffffff9a02381e

Vous pouvez examiner la trace de pile à l’aide de la commande k, kb, kc, kd, kp, kP, kv (Backtrace de pile d’affichage).

3: kd> k
 # ChildEBP RetAddr  
00 81d9ace0 976e605e dxgkrnl!TdrUpdateDbgReport+0x93 [d:\blue_gdr\windows\core\dxkernel\dxgkrnl\core\dxgtdr.cxx @ 944]
01 81d9acfc 976ddead dxgkrnl!TdrCollectDbgInfoStage2+0x195 [d:\blue_gdr\windows\core\dxkernel\dxgkrnl\core\dxgtdr.cxx @ 1759]
02 81d9ad24 976e664f dxgkrnl!DXGADAPTER::Reset+0x23f [d:\blue_gdr\windows\core\dxkernel\dxgkrnl\core\adapter.cxx @ 14972]
03 81d9ad3c 977be9e0 dxgkrnl!TdrResetFromTimeout+0x16 [d:\blue_gdr\windows\core\dxkernel\dxgkrnl\core\dxgtdr.cxx @ 2465]
04 81d9ad50 977b7518 dxgmms1!VidSchiRecoverFromTDR+0x13 [d:\blue_gdr\windows\core\dxkernel\dxgkrnl\dxgmms1\vidsch\vidscher.cxx @ 1018]
05 (Inline) -------- dxgmms1!VidSchiRun_PriorityTable+0xfa71
06 81d9ad70 812c01d4 dxgmms1!VidSchiWorkerThread+0xfaf2 [d:\blue_gdr\windows\core\dxkernel\dxgkrnl\dxgmms1\vidsch\vidschi.cxx @ 424]
07 81d9adb0 81325fb1 nt!PspSystemThreadStartup+0x58 [d:\blue_gdr\minkernel\ntos\ps\psexec.c @ 5884]
08 81d9adbc 00000000 nt!KiThreadStartup+0x15 [d:\blue_gdr\minkernel\ntos\ke\i386\threadbg.asm @ 81]

Vous pouvez également définir un point d’arrêt dans le code menant à ce code d’arrêt et tenter d’effectuer une seule étape vers le code d’erreur, si vous pouvez reproduire de manière cohérente le code d’arrêt.

Pour plus d'informations, consultez les rubriques suivantes :

Analyse du vidage sur incident à l’aide des débogueurs Windows (WinDbg)

Si vous n’êtes pas équipé pour utiliser le débogueur Windows pour résoudre ce problème, vous pouvez utiliser certaines techniques de dépannage de base.

  • Vérifiez la connexion système dans observateur d'événements pour obtenir des messages d’erreur supplémentaires susceptibles d’aider à identifier le périphérique ou le pilote à l’origine de cette vérification de bogue.

  • Si un pilote est identifié dans un message de vérification d’erreur, désactivez-le ou contactez le fabricant pour obtenir les mises à jour.

  • Vérifiez que tous les logiciels associés aux graphiques tels que DirectX et OpenGL sont à jour et que toutes les applications gourmandes en graphiques (telles que les jeux) sont entièrement corrigées.

  • Vérifiez que tout nouveau matériel installé est compatible avec la version installée de Windows. Par exemple, vous pouvez obtenir des informations sur le matériel requis à Windows 10 Spécifications.

  • Utilisation du mode sans échec

    Envisagez d’utiliser le mode sans échec pour isoler ce problème. L’utilisation du mode sans échec charge uniquement les pilotes et les services système requis minimum au démarrage de Windows. Pour entrer en mode sans échec, utilisez La mise à jour et la sécurité dans les paramètres. Sélectionnez Démarrage avancé de récupération> pour démarrer en mode maintenance. Dans le menu résultant, choisissez Résoudre les problèmes ->Options avancées ->Paramètres de démarrage ->Redémarrer. Une fois Windows redémarré sur l’écran Paramètres de démarrage , sélectionnez l’option 4, 5 ou 6 pour démarrer en mode sans échec.

    Le mode sans échec peut être disponible en appuyant sur une touche de fonction au démarrage, par exemple F8. Reportez-vous aux informations du fabricant pour connaître des options de démarrage spécifiques.

  • Exécutez l’outil Diagnostics de mémoire Windows pour tester la mémoire. Dans la zone de recherche du panneau de configuration, tapez Mémoire, puis sélectionnez Diagnostiquer les problèmes de mémoire de votre ordinateur. Une fois le test exécuté, utilisez l’Observateur d’événements pour afficher les résultats sous le journal système. Recherchez l’entrée MemoryDiagnostics-Results pour afficher les résultats.

  • Vous pouvez essayer d’exécuter les diagnostics matériels fournis par le fabricant du système.

  • Pour obtenir des informations générales supplémentaires sur la résolution des problèmes, consultez Données d’écran bleu.

Remarques

Conditions de certification matérielle

Pour plus d’informations sur les exigences que les appareils matériels doivent respecter lorsqu’ils implémentent TDR, reportez-vous à la documentation WHCK sur Device.Graphics... TDRResiliency.