0x117 проверки ошибок: VIDEO_TDR_TIMEOUT_DETECTED

Динамический дамп VIDEO_TDR_TIMEOUT_DETECTED имеет значение 0x00000117. Это означает, что драйвер дисплея не смог своевременно отреагировать.

(Этот код никогда не может использоваться для реальных проверка ошибок; он используется для определения динамических дампов.)

Важно!

Эта статья предназначена для программистов. Если вы являетесь клиентом, который получил код ошибки синего экрана во время работы с компьютером, см. статью Устранение ошибок синего экрана.

Параметры VIDEO_TDR_TIMEOUT_DETECTED

Параметр Описание

1

Указатель на внутренний контекст восстановления TDR, если он доступен.

2

Указатель на модуль ответственного драйвера устройства (например, тег владельца).

3

Дополнительный ключ сегментирования, зависящий от драйвера.

4

Внутренние зависимые от контекста данные, если они доступны.

Причина

Распространенная проблема стабильности графики возникает, когда система полностью зависает или зависает при обработке команды или операции конечного пользователя. Обычно GPU занят обработкой интенсивных графических операций, как правило, во время игры. Обновления экрана не происходят, и пользователи предполагают, что их система заблокирована. Обычно пользователи подождите несколько секунд, а затем перезагрузите систему, нажав кнопку питания. Windows пытается обнаружить эти проблемные ситуации зависания и динамически восстановить адаптивный рабочий стол.

Этот процесс обнаружения и восстановления называется обнаружением и восстановлением времени ожидания (TDR). Время ожидания по умолчанию составляет 2 секунды. В процессе TDR для видеоадаптеров планировщик GPU операционной системы вызывает функцию DxgkDdiResetFromTimeout драйвера дисплея miniport для повторной инициализации драйвера и сброса GPU.

Если процесс восстановления завершится успешно, появится сообщение о том, что драйвер дисплея перестал отвечать на запросы и восстановлен.

Дополнительные сведения см. в разделах Обнаружение и восстановление времени ожидания (TDR), разделы реестра TDR и изменения TDR в Windows 8 которые находятся в разделе Обнаружение и восстановление времени ожидания (TDR).

Решение

Графическому процессору требуется больше времени, чем разрешено для отображения графики на мониторе. Эта реакция на событие может возникать по одной или нескольким из следующих причин.

  • Возможно, потребуется установить последние обновления для драйвера дисплея, чтобы он правильно поддерживал процесс TDR.
  • Проблемы с оборудованием, влияющие на способность видео карта правильно работать, в том числе:
    • Компоненты с превышением времени, такие как системная плата
    • Неправильная совместимость компонентов и параметры (особенно конфигурации памяти и времени)
    • Недостаточное охлаждение системы
    • Недостаточное питание системы
    • Дефектные части (модули памяти, системные платы и т. д.)
  • Визуальные эффекты или слишком много программ, работающих в фоновом режиме, могут замедлять работу компьютера, поэтому видео карта не могут реагировать при необходимости.

Расширение отладки !analyze отображает сведения о проверка ошибок и может быть полезно для определения первопричины.

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.

...

Также отображается имя модуля сбоя.

MODULE_NAME: atikmpag

IMAGE_NAME:  atikmpag.sys

Вы можете использовать команду lmv для отображения сведений о драйвере, который неисправен, включая метку времени.

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

Параметр 1 содержит указатель на 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

Параметр 2 содержит указатель на модуль ответственного драйвера устройства (например, тег владельца).

BUGCHECK_P2: ffffffff9a02381e

Вы можете изучить трассировку стека с помощью команды k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace).

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]

Вы также можете задать точку останова в коде, который ведет к этому коду остановки, и попытаться выполнить один шаг вперед в коде сбоя, если вы можете последовательно воспроизвести код остановки.

Дополнительные сведения см. в следующих статьях:

Анализ аварийного дампа с помощью отладчиков Windows (WinDbg)

Если вы не готовы использовать отладчик Windows для работы с этой проблемой, можно использовать некоторые основные методы устранения неполадок.

  • Проверьте Просмотр событий системного входа на наличие дополнительных сообщений об ошибках, которые могут помочь определить устройство или драйвер, вызывающие эту ошибку проверка.

  • Если в сообщении об ошибке указан драйвер, отключите его или обратитесь к изготовителю за обновлениями драйверов.

  • Убедитесь, что все графические программы, такие как DirectX и OpenGL, обновлены, а все графические приложения (например, игры) полностью исправлены.

  • Убедитесь, что любое новое установленное оборудование совместимо с установленной версией Windows. Например, сведения о требуемом оборудовании можно получить на странице спецификаций Windows 10.

  • Использование безопасного режима

    Рассмотрите возможность использования безопасного режима, чтобы изолировать эту проблему. При использовании безопасного режима загружаются только минимальные необходимые драйверы и системные службы во время запуска Windows. Чтобы перейти в безопасный режим, используйте обновление и безопасность в разделе Параметры. Выберите Восстановление —>расширенный запуск, чтобы загрузиться в режим обслуживания. В итоговом меню выберите Устранение неполадок ->Дополнительные параметры ->Параметры запуска ->Перезапуск. После перезапуска Windows на экране Параметры запуска выберите параметр 4, 5 или 6, чтобы загрузиться в безопасный режим.

    Безопасный режим может быть доступен при нажатии функциональной клавиши при загрузке, например F8. Сведения о конкретных вариантах запуска см. в сведениях от производителя.

  • Запустите средство диагностики памяти Windows, чтобы проверить память. В поле поиска на панели управления введите Память, а затем выберите Диагностика проблем с памятью компьютера. После запуска теста используйте средство просмотра событий, чтобы просмотреть результаты в системном журнале. Чтобы просмотреть результаты, найдите запись MemoryDiagnostics-Results .

  • Можно попробовать запустить средство диагностики оборудования, предоставленное производителем системы.

  • Дополнительные общие сведения об устранении неполадок см. в разделе Данные синего экрана.

Комментарии

Сертификационные требования к оборудованию

Сведения о требованиях, которым должны соответствовать аппаратные устройства при реализации TDR, см. в документации по WHCK на сайте Device.Graphics... TDRResiliency.