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 OpenVR plugin segfault in vrclient.so #79

Closed
ChristophHaag opened this issue Nov 27, 2017 · 3 comments
Closed

Godot OpenVR plugin segfault in vrclient.so #79

ChristophHaag opened this issue Nov 27, 2017 · 3 comments
Assignees

Comments

@ChristophHaag
Copy link
Contributor

Since the crash is in CVRCompositorSharedTextures::AcquireSync() I should probably say that I am using the patchset at https://github.com/lostgoat/mesa/tree/wip-semaphore-gl-v2 in my mesa.

The crash does not happen always. Opening the SteamVR frame time graph seems to trigger it often.

Backtrace:

Program terminated with signal SIGABRT, Aborted.
#0  0x00007faf057d68a0 in raise () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7faf08af2f80 (LWP 28826))]
(gdb) bt
#0  0x00007faf057d68a0 in raise () from /usr/lib/libc.so.6
#1  0x00007faf057d7f09 in abort () from /usr/lib/libc.so.6
#2  0x000056360f07f95e in handle_crash (sig=11) at platform/x11/crash_handler_x11.cpp:107
#3  <signal handler called>
#4  0x00007faeec4602f2 in CVRCompositorSharedTextures::AcquireSync() () from /home/chris/.local/share/Steam/SteamApps/common/SteamVR/bin/linux64/vrclient.so
#5  0x00007faeec45b26d in CVRCompositorClient::PostPresentHandoff() () from /home/chris/.local/share/Steam/SteamApps/common/SteamVR/bin/linux64/vrclient.so
#6  0x00007faeec45bcd4 in CVRCompositorClient::WaitGetPoses(vr::TrackedDevicePose_t*, unsigned int, vr::TrackedDevicePose_t*, unsigned int) ()
   from /home/chris/.local/share/Steam/SteamApps/common/SteamVR/bin/linux64/vrclient.so
#7  0x00007faeece80ae3 in godot_arvr_process (p_data=0x56361410e730) at src/ARVRInterface.cpp:297
#8  0x000056360f103c6e in ARVRInterfaceGDNative::process (this=0x563613de7680) at modules/gdnative/arvr/arvr_interface_gdnative.cpp:211
#9  0x00005636108c9365 in VisualServerViewport::draw_viewports (this=0x5636139a72b0) at servers/visual/visual_server_viewport.cpp:243
#10 0x000056361075b363 in VisualServerRaster::draw (this=0x56361392cb20) at servers/visual/visual_server_raster.cpp:103
#11 0x0000563610794af9 in VisualServerWrapMT::draw (this=0x563613a7afb0) at servers/visual/visual_server_wrap_mt.cpp:100
#12 0x000056360f0adafc in Main::iteration () at main/main.cpp:1732
#13 0x000056360f0886bb in OS_X11::run (this=0x7ffc76d15410) at platform/x11/os_x11.cpp:2126
#14 0x000056360f07e16f in main (argc=9, argv=0x7ffc76d158d8) at platform/x11/godot_x11.cpp:54

building it is basically

git clone https://github.com/godotengine/godot.git && cd godot && scons platform=x11 -j12
git clone https://github.com/BastiaanOlij/godot_openvr/ && cd godot_openvr && GODOT_HEADERS=/wherever/godot/modules/gdnative/include OPENVR_PATH=/wherever/openvr scons platform=linux

then start godot/bin/godot.x11.tools.64 and import the demo project from the godot_openvr directory and it'll just work (if you have libopenvr_api.so in LD_LIBRARY_PATH probably)

@Plagman
Copy link
Member

Plagman commented Nov 27, 2017

What Mesa are you applying the patchset to? Info on your kernel bits might also be useful to try to reproduce this, Andres might have more questions for you.

@ChristophHaag
Copy link
Contributor Author

That was latest mesa git master and amd-staging-drm-next.

The first question is as usual if this is easily reproduced by anyone. I'll probably try it myself without the GL_EXT_semaphore patches too.

@ChristophHaag
Copy link
Contributor Author

Hasn't happened for a long time.

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

No branches or pull requests

3 participants