XRT_ERROR_NOT_IMPLEMENTED When Running Server w/ WiVRn

I'm attempting to run stardust-xr-server and connect via WiVRn with my MQ3. I've tried different permutations of X11, Wayland, server installed via the AUR or compiled from source. I get the same error each time. Here is an excerpt:
LOG in xrCreateInstance: Instance created
<snip>

LOG in xrCreateInstance: Selected devices
<snip>

ERROR [ipc_compositor_get_reference_bounds_rect] ipc_call_compositor_get_reference_bounds_rect failed: XRT_ERROR_NOT_IMPLEMENTED [/home/shnee/.local/share/envision/wivrn/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_compositor.c:868]
ERROR [ipc_receive] recvmsg(41) failed: '104' 'Connection reset by peer'!
ERROR [ipc_client_hmd_update_inputs] ipc_call_device_update_input failed: XRT_ERROR_IPC_FAILURE [/home/shnee/.local/share/envision/wivrn/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_hmd.c:149]
XR_ERROR_INSTANCE_LOST in xrSyncActions: Call to oxr_action_sync_data failed
LOG in xrCreateInstance: Instance created
<snip>

LOG in xrCreateInstance: Selected devices
<snip>

ERROR [ipc_compositor_get_reference_bounds_rect] ipc_call_compositor_get_reference_bounds_rect failed: XRT_ERROR_NOT_IMPLEMENTED [/home/shnee/.local/share/envision/wivrn/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_compositor.c:868]
ERROR [ipc_receive] recvmsg(41) failed: '104' 'Connection reset by peer'!
ERROR [ipc_client_hmd_update_inputs] ipc_call_device_update_input failed: XRT_ERROR_IPC_FAILURE [/home/shnee/.local/share/envision/wivrn/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_hmd.c:149]
XR_ERROR_INSTANCE_LOST in xrSyncActions: Call to oxr_action_sync_data failed
I am able to run other XR apps. Any ideas on how I can troubleshoot this further? EDIT: The solution for me was 2 steps: 1. Apply this https://discord.com/channels/647222689777582080/659858947896770590/1306426347647668256 patch to WiVRn by placing it in pathces/monado before building. 2. Provide the following env vars when running the server, env __GLX_VENDOR_LIBRARY_NAME=mesa __EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink stardust-xr-server Thanks to @Schmarni for all the help! It sounds like this issue only appears in the 550 Nvidia driver.
11 Replies
Schmarni
Schmarni4w ago
what gpu are you using? if its nvidia, what driver version are you using?
shnee
shneeOP4w ago
I'm using the RTX 4070 and the driver version is 550.144.03
Schmarni
Schmarni4w ago
ah, are you able to easily update to 565? if not you need to patch monado by dropping a patch file into a folder and rebuilding wivrn
bubbly_fawn_96545
What's the issue with the driver? This looks more like an error with the IPC.
Schmarni
Schmarni4w ago
on older drivers stardust crashes the runtime which causes the ipc errors here
shnee
shneeOP4w ago
looks like im stuck on 550 for now. Is this the patch I need? https://discord.com/channels/647222689777582080/659858947896770590/1306426347647668256
Schmarni
Schmarni4w ago
yes that one, just drop that in patches/monado and rebuild it might give you subpar performance when compared to an updated driver, but at least it works
shnee
shneeOP4w ago
awesome. i will give that a shot and report back. Thank you After applying the patch the server no longer crashes. However, I can't see anything in the headset. I admit I don't really know what I'm doing trying to launch apps in stardust. I created a script that mimics telescope and I run the server with stardust-xr-server -o 1 -e ./telescope-manual.sh. This is the output I get:
libEGL warning: egl: failed to create dri2 screen
libEGL warning: egl: failed to create dri2 screen
LOG in xrCreateInstance: Instance created
createInfo->applicationInfo.applicationName: Stardust XR
createInfo->applicationInfo.applicationVersion: 1
createInfo->applicationInfo.engineName: StereoKit
createInfo->applicationInfo.engineVersion: 16384
createInfo->applicationInfo.apiVersion: 1.0.34
appinfo.detected.engine.name: (null)
appinfo.detected.engine.version: 0.0.0
quirks.disable_vulkan_format_depth_stencil: false
quirks.no_validation_error_in_create_ref_space: true
quirks.skip_end_session: false
quirks.parallel_views: false

LOG in xrCreateInstance: Selected devices...
<snip>
ERROR [ipc_compositor_get_reference_bounds_rect] ipc_call_compositor_get_reference_bounds_rect failed: XRT_ERROR_NOT_IMPLEMENTED [/home/shnee/.local/share/envision/c31bc893-e7f0-4106-8d8c-8994634f5108/xrservice/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_compositor.c:868]
ERROR [ipc_compositor_get_reference_bounds_rect] ipc_call_compositor_get_reference_bounds_rect failed: XRT_ERROR_NOT_IMPLEMENTED [/home/shnee/.local/share/envision/c31bc893-e7f0-4106-8d8c-8994634f5108/xrservice/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_compositor.c:868]
2025-02-04T21:55:25.778771Z ERROR tokio-runtime-worker smithay::backend::renderer::gles: 358: [GL] GL_INVALID_FRAMEBUFFER_OPERATION in glClear(incomplete framebuffer)
ERROR [handle_fencing_or_finish] Failed to insert a fence
<the last 2 lines repeated a lot>
libEGL warning: egl: failed to create dri2 screen
libEGL warning: egl: failed to create dri2 screen
LOG in xrCreateInstance: Instance created
createInfo->applicationInfo.applicationName: Stardust XR
createInfo->applicationInfo.applicationVersion: 1
createInfo->applicationInfo.engineName: StereoKit
createInfo->applicationInfo.engineVersion: 16384
createInfo->applicationInfo.apiVersion: 1.0.34
appinfo.detected.engine.name: (null)
appinfo.detected.engine.version: 0.0.0
quirks.disable_vulkan_format_depth_stencil: false
quirks.no_validation_error_in_create_ref_space: true
quirks.skip_end_session: false
quirks.parallel_views: false

LOG in xrCreateInstance: Selected devices...
<snip>
ERROR [ipc_compositor_get_reference_bounds_rect] ipc_call_compositor_get_reference_bounds_rect failed: XRT_ERROR_NOT_IMPLEMENTED [/home/shnee/.local/share/envision/c31bc893-e7f0-4106-8d8c-8994634f5108/xrservice/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_compositor.c:868]
ERROR [ipc_compositor_get_reference_bounds_rect] ipc_call_compositor_get_reference_bounds_rect failed: XRT_ERROR_NOT_IMPLEMENTED [/home/shnee/.local/share/envision/c31bc893-e7f0-4106-8d8c-8994634f5108/xrservice/build/_deps/monado-src/src/xrt/ipc/client/ipc_client_compositor.c:868]
2025-02-04T21:55:25.778771Z ERROR tokio-runtime-worker smithay::backend::renderer::gles: 358: [GL] GL_INVALID_FRAMEBUFFER_OPERATION in glClear(incomplete framebuffer)
ERROR [handle_fencing_or_finish] Failed to insert a fence
<the last 2 lines repeated a lot>
Any ideas?
Schmarni
Schmarni4w ago
can you try to put env __GLX_VENDOR_LIBRARY_NAME=mesa __EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink infront of your command? that is needed under 565 under wayland for some reason, never needed it before tho
Nova
Nova4w ago
oh joy this again can't wait to bevy this
shnee
shneeOP4w ago
SUCCESS! Thanks a ton @Schmarni!

Did you find this page helpful?