-
Notifications
You must be signed in to change notification settings - Fork 30
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
Segfault on Raspberry Pi 5 #57
Comments
The reason why choosing a different kms-drm-device is that the kms winsys then fails and wayland is used instead. So apart from the uncaught null pointer dereference, the main problem here is that kms is chosen by default altough being in a wayland environment. |
@michaellass Thanks for the report. The branch at https://github.com/vkmark/vkmark/tree/improve-ws-selection should improve both the winsys selection logic and the crash. Let me know how it works for you. |
That branch looks very good indeed! The defaults are chosen correctly and even when explicitly passing I went further and tested the branch in different environments. I can still trigger a segfault on an x86_64 system running in text-only mode (i.e., only kms is available, no graphical environment running) when explicitly passing
From the backtrace, I'm actually not sure if vkmark or wayland itself is to blame for this one. I wonder if you can reproduce this and if there is anything that vkmark could do to handle this case. |
Running vkmark on a Raspberry Pi 5 (up-to-date Raspberry Pi OS, wayfire on wayland as window manager) leads to a segmentation fault:
Backtrace with gdb:
It turns out that
resources
passed toget_connected_connector
is NULL. The crash can therefore be caught by the following change:The crash can be circumvented by using anything else but /dev/dri/card0 as kms-drm-device, i.e., any of the following will work:
Note the last variant where I pass a nonsensical device. It turns out, the crash also vanishes when removing the default in the source code as follow:
If I remember correctly, this issue was not present on a Raspberry Pi 4. However, other Vulkan apps, such as vkcube run without issues.
The text was updated successfully, but these errors were encountered: