Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Godot Editor freezes, crashes and/or BSOD's my pc (video_tdr_failure) at random #75327

Open
bigkwii opened this issue Mar 25, 2023 · 15 comments
Open

Comments

@bigkwii
Copy link

bigkwii commented Mar 25, 2023

Godot version

4.0.1 stable

System information

Windows 10 (OS Build 19045.2728), CPU: Intel Core i7-7700HQ, GPU: NVIDIA GeForce GTX 1050Ti

Issue description

I've really only started having this problem recently.

I'm just starting to do some 3d stuff, and godot runs perfectly fine for a while, until at complete random it either crashes, freezes or at worse, BSOD's my pc (with VIDEO_TDR_FAILURE).

I've been running it through Steam since 3 for the convenience. Maybe that has something to do with it? I noticed when jumping into Godot 4 that the Steam Overlay gets really buggy, so I disabled it, but I still crash.

Opening Godot from the cmd seems to be a little more stable, but it will still eventually BSOD. Switching to Compatibility mode on the Editor seems to prevent all crashes as well, but that's hardly ideal, since I wanna use Forward+.

My drivers are up to date.

It seems like Godot really prefers to crash when I click back on it after having it minimized or with a different window on top.

Steps to reproduce

  • Open any godot project on a 3d scene
  • Either just wait, or swap windows enough times. Like I said, this seems to be pretty random.

Minimal reproduction project

here_you_go.zip

@Calinou
Copy link
Member

Calinou commented Mar 25, 2023

Do you have RTSS or other overlay software installed? See #71929 (comment).

@bigkwii
Copy link
Author

bigkwii commented Mar 25, 2023

Hi

Nope, no overlays aside from the Steam Overlay, which I disabled.

In the last hour or so I have tried a couple of things:

  • Switching to Studio Drivers. While I didn't BSOD, Godot did crash.
  • Downgrading to 4.0. It was working, until I added it to my Steam Library as a non-steam game (which means that the Steam overlay is enabled by default and doesn't have a per-game option to turn it off) and then my pc BSOD'd.

Once again, this BSOD was caused by VIDEO_TDR_FAILURE, with the culprit being the nvlddmkm.sys driver.

@bigkwii
Copy link
Author

bigkwii commented Mar 25, 2023

In case this helps: Here's the details from the MEMORY.DMP created by the latest crash:


Microsoft (R) Windows Debugger Version 10.0.25200.1003 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [D:\MEMORY.DMP]
Kernel Bitmap Dump File: Kernel address space is available, User address space may not be available.

Symbol search path is: srv*
Executable search path is: 
Windows 10 Kernel Version 19041 MP (8 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS Personal
Edition build lab: 19041.1.amd64fre.vb_release.191206-1406
Machine Name:
Kernel base = 0xfffff805`27400000 PsLoadedModuleList = 0xfffff805`2802a310
Debug session time: Sat Mar 25 16:02:35.394 2023 (UTC - 3:00)
System Uptime: 0 days 0:40:02.101
Loading Kernel Symbols
...............................................................
................................................................
................................................................
.......................
Loading User Symbols

Loading unloaded module list
.................
For analysis of this file, run !analyze -v
nt!KeBugCheckEx:
fffff805`277fa110 48894c2408      mov     qword ptr [rsp+8],rcx ss:0018:ffff828a`a73e7920=0000000000000116
6: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

VIDEO_TDR_FAILURE (116)
Attempt to reset the display driver and recover from timeout failed.
Arguments:
Arg1: ffffca0bc6504210, Optional pointer to internal TDR recovery context (TDR_RECOVERY_CONTEXT).
Arg2: fffff80550353ab0, The pointer into responsible device driver module (e.g. owner tag).
Arg3: ffffffffc000009a, Optional error code (NTSTATUS) of the last failed operation.
Arg4: 0000000000000004, Optional internal context dependent data.

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

Unable to load image \SystemRoot\System32\DriverStore\FileRepository\nvami.inf_amd64_b3414b97d027dbc4\nvlddmkm.sys, Win32 error 0n2

KEY_VALUES_STRING: 1

    Key  : Analysis.CPU.mSec
    Value: 3921

    Key  : Analysis.DebugAnalysisManager
    Value: Create

    Key  : Analysis.Elapsed.mSec
    Value: 9800

    Key  : Analysis.IO.Other.Mb
    Value: 5

    Key  : Analysis.IO.Read.Mb
    Value: 0

    Key  : Analysis.IO.Write.Mb
    Value: 32

    Key  : Analysis.Init.CPU.mSec
    Value: 2702

    Key  : Analysis.Init.Elapsed.mSec
    Value: 76562

    Key  : Analysis.Memory.CommitPeak.Mb
    Value: 107

    Key  : Bugcheck.Code.DumpHeader
    Value: 0x116

    Key  : Bugcheck.Code.KiBugCheckData
    Value: 0x116

    Key  : Bugcheck.Code.Register
    Value: 0x116

    Key  : WER.OS.Branch
    Value: vb_release

    Key  : WER.OS.Timestamp
    Value: 2019-12-06T14:06:00Z

    Key  : WER.OS.Version
    Value: 10.0.19041.1


FILE_IN_CAB:  MEMORY.DMP

BUGCHECK_CODE:  116

BUGCHECK_P1: ffffca0bc6504210

BUGCHECK_P2: fffff80550353ab0

BUGCHECK_P3: ffffffffc000009a

BUGCHECK_P4: 4

VIDEO_TDR_CONTEXT: dt dxgkrnl!_TDR_RECOVERY_CONTEXT ffffca0bc6504210
Symbol dxgkrnl!_TDR_RECOVERY_CONTEXT not found.

PROCESS_OBJECT: 0000000000000004

BLACKBOXBSD: 1 (!blackboxbsd)


BLACKBOXNTFS: 1 (!blackboxntfs)


BLACKBOXPNP: 1 (!blackboxpnp)


BLACKBOXWINLOGON: 1

PROCESS_NAME:  System

STACK_TEXT:  
ffff828a`a73e7918 fffff805`4126555e     : 00000000`00000116 ffffca0b`c6504210 fffff805`50353ab0 ffffffff`c000009a : nt!KeBugCheckEx
ffff828a`a73e7920 fffff805`41215b04     : fffff805`50353ab0 ffffca0b`bedeb920 00000000`00002000 ffffca0b`bedeb9e0 : dxgkrnl!TdrBugcheckOnTimeout+0xfe
ffff828a`a73e7960 fffff805`4120e63c     : ffffca0b`c6ce1000 00000000`01000000 00000000`00000004 00000000`00000004 : dxgkrnl!ADAPTER_RENDER::Reset+0x174
ffff828a`a73e7990 fffff805`41264c85     : 00000000`00000100 ffffca0b`c6ce1a70 00000000`c123fdd0 fffff805`2774c82c : dxgkrnl!DXGADAPTER::Reset+0x4dc
ffff828a`a73e7a10 fffff805`41264df7     : fffff805`28125440 ffffca0b`c6f06d70 00000000`00000000 00000000`00000000 : dxgkrnl!TdrResetFromTimeout+0x15
ffff828a`a73e7a40 fffff805`276bdef5     : ffffca0b`c2ebf040 fffff805`41264dd0 ffffca0b`b569b6a0 00000000`00000000 : dxgkrnl!TdrResetFromTimeoutWorkItem+0x27
ffff828a`a73e7a70 fffff805`27655485     : ffffca0b`c2ebf040 00000000`00000080 ffffca0b`b5702080 00000000`00000000 : nt!ExpWorkerThread+0x105
ffff828a`a73e7b10 fffff805`27802d48     : ffffa180`7ce8a180 ffffca0b`c2ebf040 fffff805`27655430 00000000`00000000 : nt!PspSystemThreadStartup+0x55
ffff828a`a73e7b60 00000000`00000000     : ffff828a`a73e8000 ffff828a`a73e1000 00000000`00000000 00000000`00000000 : nt!KiStartSystemThread+0x28


SYMBOL_NAME:  nvlddmkm+1073ab0

MODULE_NAME: nvlddmkm

IMAGE_NAME:  nvlddmkm.sys

STACK_COMMAND:  .cxr; .ecxr ; kb

FAILURE_BUCKET_ID:  0x116_IMAGE_nvlddmkm.sys

OS_VERSION:  10.0.19041.1

BUILDLAB_STR:  vb_release

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

FAILURE_ID_HASH:  {c89bfe8c-ed39-f658-ef27-f2898997fdbd}

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


@bigkwii
Copy link
Author

bigkwii commented Mar 25, 2023

UPDATE:

I re installed my drivers. Here's the good news: No more BSOD!

The not-so-good news: Godot still crashes after some time.

I ran it through the cmd, and got these 2 errors repeating ad infinitum:

ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_NOT_READY
    at: (drivers/vulkan/vulkan_context.cpp:2280)
ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
    at: (drivers/vulkan/vulkan_context.cpp:2357)

Note that I'm using 4.0

//EDIT
The exact same happens in 4.0.1

I'm just gonna stay in Compatibility mode until something new comes up.

Thanks in advance for any help.

@Lilyskandor
Copy link

Hello!
I am facing the exact same issues.
It occurs even in a basic empty new project.
I had BSODs too, but after reinstalling Nvidia's graphic drivers, it seems to have calmed down (for now)

I'm still having the crashes. Same error output as in the previous comment.

Reinstalling Godot didn't fix anything.
(Neither did restarting the computer, deleting and restarting project, changing installation path)

Godot version: v4.0.1.stable.official [cacf499]

Computer info:
OS: Windows 10
RAM: 32GB
GPU: Nvidia GTX 1050
CPU: Intel Core i7-7700HQ 2.80GHz (8 CPUs)
DirectX Version: DirectX12

Console output:
image

Console output at crash:
image

@Lilyskandor
Copy link

Lilyskandor commented Apr 5, 2023

Update: Blue Screens do still occur sometimes

Working in Compatibility mode (so without vulkan) allows me to work on my project without any issue

@Zireael07
Copy link
Contributor

Strongly suspect your Vulkan drivers have some sort of issues

@Lilyskandor
Copy link

How can I handle this? I have installed (and reinstalled) the most recent stable Godot version

@bigkwii
Copy link
Author

bigkwii commented Apr 6, 2023

UPDATE: As of 4.0.2, this is still happening when using Forward+ and Mobile (I just got BSOD'd twice while testing lol).

Compatibility still works, luckily.

@Lilyskandor
Copy link

UPDATE: v4.1.stable.official [9704596] still BSODing, got it in the first minute after creating a new blank project.

I had stopped using Godot due to the issue, and I hoped the updates would have fixed it, but still nope. :(

@bigkwii
Copy link
Author

bigkwii commented Jul 16, 2023

I guess I should give an update on my status:

I gave up on my old 1050 Ti Laptop, and finished assembling a long overdue desktop that I've had in the works for the better part of 2 years.

Godot was far from the only program where I was encountering video_tdr_failure. I'll spare you the details, but in the end I figured my gpu was dying. I have had been using it extensively and intensively for almost every day of the past 6 years after all.

For the record I still use it sometimes for a bunch of stuff, but any heavy graphics stuff has a very strong tendency of getting me BSOD'd (usually on closing a program, and not during, which is bizarre, but I've already lost enough sleep over trying to figure that one out. I went through a whole journey trying to figure out what was wrong, since by that point it was obvious that something was wrong with my machine, but came out pretty much empty handed).

Point is, I've had no issues since upgrading, 4.1's working flawlessly. I don't really feel satisfied with this answer, but the issue may have been that my gpu was on its last legs.

Another possibility is that there may have been some software shenanigans going on with my OS. After all, that Laptop has never been formatted, but I wasn't in the mood to do a clean reinstall of windows just to test a theory that in all likelihood would've been proven false.

That's just me though. I don't really use that Laptop for gaming anymore, never mind game development, so I won't have much more to add to this thread. I'm sorry.

Anyways, thanks for the support. This community and team are some of the best I've had the pleasure of interacting with.

@AThousandShips
Copy link
Member

AThousandShips commented Jul 16, 2023

@Lilyskandor have you updated your drivers? You talked about updating Godot before but didn't mention the drivers, they are not part of the Godot engine

@bigkwii thank you! It means a lot to hear, we try our best to squash all the bugs!

@Lilyskandor
Copy link

@AThousandShips I have updated my GPU drivers everytime there were available updates

@bigkwii Could it be more a Nvidia 1050 GPU issue then? This is the common points between our devices, and is also very probably the difference between your new computer and your older laptop.

@bigkwii
Copy link
Author

bigkwii commented Jul 16, 2023

@Lilyskandor It's certainly a gpu issue. That has been made clear to me during the past few months.

Part of me wants to believe the 1050 and 1050 Ti Mobile gpu's are cursed somehow.

In all seriousness, signs point to my issues being more due to the degradation of my gpu over the course of 6 years of heavy use, and less about the model of my gpu. That's what I think at least.

But hey, what do I know. Maybe there's some strange compatibility spaghetti between the 1050's and Vulkan. You never know.

@Lilyskandor
Copy link

I'm very doubtful about it being just a "usage" issue, it wouldn't make sense for two similar GPU to have the exact same software-triggered issue appearing due to the hardware getting overused. That'd require both of our GPU to degrade the exact same way, in a very precise way that makes it work fine ~90% of the time, except in the very specific case of when Vulkan is used.

Like, that's too precise to be simply due to usage.
"General" issues could definitely be pointed to overuse, and I do have those too. But Godot triggers it in a too specific way to just be random occurence due to degradation.

So it's very probably a spaghetti shenanigan on the 1050's, which Vulkan somehow instantly triggers.
It would also explain some other (but WAAAYYY less regular) "video_tdr_failure" bsods I have in a few games or in other rare occurences.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants