錯誤檢查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 排程器會呼叫 display miniport 驅動程式的 DxgkDdiResetFromTimeout 函式,以重新初始化驅動程式並重設 GPU。

如果復原程式成功,則會顯示訊息,指出「顯示驅動程式已停止回應並已復原」。

如需詳細資訊,請參閱逾時偵測和復原 (TDR) 、TDR 登錄機碼和TDR 變更,這些 Windows 8變更位於逾時偵測和復原 (TDR)

解決方案

GPU 所花費的時間比顯示圖形給監視器所花費的時間還多。 下列一個或多個原因會發生此行為:

  • 您可能需要為顯示器驅動程式安裝最新的更新,使其正確支援 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 時必須符合的需求資訊,請參閱 Device.Graphics 上的 WHCK 檔 ...TDRResiliency