protonscr

[BUG] 1.13.6 vrcompositor crashing (Elite Dangerous)

steamvropen bug
ValveSoftware/SteamVR-for-Linux#366 · opened 2020-06-24 by dsalt · updated 2020-07-06 · 1 comments · github
Ddsalt 2020-06-24 github

vrcompositor crashes when Elite Dangerous attempts to use the HMD. The game continues to run, rendering only in its desktop window. No tracking.

On exit, SteamVR complains “Shared IPC Compositor Connect Failed (306)”.

I attached gdb to vrcompositor and got the following backtrace:

#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007f8e94496535 in __GI_abort () at abort.c:79
#2  0x00007f8e9449640f in __assert_fail_base (fmt=0x7f8e945f8ee0 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x7f8e80574b68 "image->planes[0].surface.surf_size", file=0x7f8e80574780 "../src/amd/vulkan/radv_image.c", line=1429, function=<optimized out>) at assert.c:92
#3  0x00007f8e944a4102 in __GI___assert_fail (assertion=0x7f8e80574b68 "image->planes[0].surface.surf_size", file=0x7f8e80574780 "../src/amd/vulkan/radv_image.c", line=1429, function=0x7f8e80575180 "radv_image_create_layout") at assert.c:101
#4  0x00007f8e80232982 in ?? () from /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so
#5  0x00007f8e80232f17 in ?? () from /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so
#6  0x00007f8e80233cee in ?? () from /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so
#7  0x00000000005fd842 in CSharedImageLinux::ImportVulkanImage(VkDevice_T*, unsigned long) ()
#8  0x000000000058f428 in CVulkanVRRenderer::ImportTextureFromSharedHandle(unsigned long, vr::EColorSpace, bool) ()
#9  0x0000000000445fa9 in CGraphicsDevice::RenderEye(CGraphicsDevice::RenderEyeParams_t const&) ()
[#10](/issue/ValveSoftware/SteamVR-for-Linux/10) 0x00000000004190c6 in vr::CHmdDistort::RenderEye(vr::EVREye, vr::CHmdDistort::DistortRenderEyeParams_t const*, vr::TrackedDevicePose_t const*, vr::ETrackingUniverseOrigin, vr::HmdMatrix34_t const&, vr::HmdMatrix34_t*, vr::ETrackingDegrees, unsigned long, std::vector<CGraphicsDevice::RenderModelParams_t, std::allocator<CGraphicsDevice::RenderModelParams_t> > const&, std::vector<SceneGraphPanel_t, std::allocator<SceneGraphPanel_t> > const&) ()
[#11](/issue/ValveSoftware/SteamVR-for-Linux/11) 0x000000000041ae3c in vr::CHmdDistort::RenderEyes(vr::CHmdDistort::DistortRenderEyeParams_t const*, vr::CHmdDistort::DistortRenderEyeParams_t const*, vr::TrackedDevicePose_t const*, vr::ETrackingUniverseOrigin, vr::ETrackingState_t, unsigned long, CGraphicsDevice::DebugStatsArgs_t const&) ()
[#12](/issue/ValveSoftware/SteamVR-for-Linux/12) 0x000000000049395e in CRenderThread::UpdateAsync() ()
[#13](/issue/ValveSoftware/SteamVR-for-Linux/13) 0x00000000004974ca in CRenderThread::Run() ()
[#14](/issue/ValveSoftware/SteamVR-for-Linux/14) 0x000000000057b420 in SteamThreadTools::CThread::ThreadProc(void*) ()
[#15](/issue/ValveSoftware/SteamVR-for-Linux/15) 0x00007f8e9463cfa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
[#16](/issue/ValveSoftware/SteamVR-for-Linux/16) 0x00007f8e9456d4cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

With SteamVR 1.13.5 or the current stable (1.12), all is well

System Information (please complete the following information):

  • Distribution: Devuan beowulf
  • SteamVR version: 1.13.6
  • Steam client version: 1592614798
  • Opted into Steam client beta?: Yes
  • Graphics driver version: Mesa 20.0.6
Ddsalt 2020-07-06 github

I recompiled Mesa with -Db_ndebug=true. Either that or use of a newer SteamVR has stopped this (I should re-check).

Nothing extracted yet.