protonscr

GTR2 game process does not exit if DXVK is used

dxvkclosed d3d9
doitsujin/dxvk#2370 · opened 2021-11-18 by TheIronWolfModding · updated 2021-11-25 · 3 comments · github
2 matching comments, n / p to jump
TTheIronWolfModding 2021-11-18 github

GTR2 does not exit if DXVK is in use. Upon exiting, window is closed, but process is still running and there's CPU activity.

Please let me know if there's anything else I could collect. Would process dump taken from Windows Explorer be helpful? (I suspect not, as d3d9 is built by gcc). I managed to build dxvk locally so I can build debug d3d9 if needed. But I am not familiar with gdb, so if gdb can be useful would appreciate some guidance on how to use it to collect dump.

Software information

FIA GTR2 Game, DX9 32bit, windowed, 1024x768 32bit

System information

  • GPU: RTX 3090
  • Driver: 496.49
  • Wine version: Windows 10
  • DXVK version: 1.9.2

Apitrace file(s)

Log files

TTheIronWolfModding 2021-11-18 github

Stack from VS - best I can do without symbols:

KernelBase.dll!_SwitchToThread@0() Unknown
vulkan-1.dll!576dc96d() Unknown
vulkan-1.dll![Frames below may be incorrect and/or missing, no symbols loaded for vulkan-1.dll] Unknown
nvoglv32.dll!79c733c9() Unknown
vulkan-1.dll!5770bf58() Unknown
d3d9.dll!57892fda() Unknown
d3d9.dll!578464ec() Unknown
d3d9.dll!578c7cae() Unknown
d3d9.dll!578c47d1() Unknown
GTR2.exe!003c3a45() Unknown
GTR2.exe!00393eff() Unknown
GTR2.exe!003940be() Unknown
GTR2.exe!0035d292() Unknown
kernel32.dll!@BaseThreadInitThunk@12() Unknown
ntdll.dll!__RtlUserThreadStart() Unknown
ntdll.dll!__RtlUserThreadStart@8() Unknown

TTheIronWolfModding 2021-11-20 github

Better stack:

ntdll.dll!_NtYieldExecution@0()	Unknown
KernelBase.dll!_SwitchToThread@0()	Unknown
vulkan-1.dll!6139c96d()	Unknown
vulkan-1.dll![Frames below may be incorrect and/or missing, no symbols loaded for vulkan-1.dll]	Unknown
nvoglv32.dll!799133c9()	Unknown
vulkan-1.dll!613cbf58()	Unknown
d3d9_dxvk.dll!dxvk::vk::InstanceFn::~InstanceFn(void)	Unknown
d3d9_dxvk.dll!dxvk::vk::InstanceFn::`scalar deleting destructor'(unsigned int)	C++

d3d9_dxvk.dll!dxvk::Rcdxvk::vk::InstanceFn::decRef() Line 113 C++
d3d9_dxvk.dll!dxvk::Rcdxvk::vk::InstanceFn::~Rcdxvk::vk::InstanceFn() Line 89 C++
d3d9_dxvk.dll!dxvk::DxvkInstance::~DxvkInstance(void) Unknown
d3d9_dxvk.dll!dxvk::DxvkInstance::scalar deleting destructor'(unsigned int) C++ d3d9_dxvk.dll!dxvk::Rc<dxvk::DxvkInstance>::decRef() Line 113 C++ d3d9_dxvk.dll!dxvk::Rc<dxvk::DxvkInstance>::~Rc<dxvk::DxvkInstance>() Line 89 C++ d3d9_dxvk.dll!dxvk::D3D9InterfaceEx::~D3D9InterfaceEx() C++ d3d9_dxvk.dll!dxvk::D3D9InterfaceEx::scalar deleting destructor'(unsigned int) C++
d3d9_dxvk.dll!dxvk::ComObject::ReleasePrivate() Line 67 C++
d3d9_dxvk.dll!dxvk::ComObjectClamp::Release() Line 108 C++
d3d9.dll!IDirect3D9Proxy::Release() Line 33 C++
GTR2.exe!00863a45() Unknown
GTR2.exe!00833eff() Unknown
GTR2.exe!008340be() Unknown
GTR2.exe!007fd292() Unknown
kernel32.dll!@BaseThreadInitThunk@12() Unknown
ntdll.dll!__RtlUserThreadStart() Unknown
ntdll.dll!__RtlUserThreadStart@8() Unknown

Note: this happens without my proxy too, but long story short I can't get stack without it.

I guess I see the workaround - just suppress the release in my proxy. Will close this issue soon if I see no other problem related to suppression.

TTheIronWolfModding 2021-11-25 github

Closing this because not releasing resources on shutdown does not appear to have any negative effects. Will submit PR if I find a fix.

DLLs