kms-glsl
kms-glsl copied to clipboard
failed to set mode : Permission denied
Hello, i tried to run the program on a raspberry pi 3B+ using raspi os ver 4.2 .
Compilation worked fine bit when i try to run an example shader, get the following error: "failed to set mode : Permission denied"
I did the required changes to the /boot/config.txt, have the following dependencies versions : gcc 4:10.2.1-1+rpi1 make 4.3-4.1 libdrm-dev 2.4.104-1+rpi1 libgbm-dev 20.3.5-1+rpt4+rpi1 libegl-dev 1.3.2-1 libgles2-mesa-dev 20.3.5-1+rpt4+rpi1
Uname -a command returns the following output : Linux raspberrypi 5.15.32-v7+ #1538 SMP armv7l
I tried to enable experimental wayland backend support, activated gl full kms desktop driver support and the same error remains. I noticed while i launched the command that i have the following parameters:
OpenGL ES 2.x information:
version: "OpenGL ES 2.0 Mesa 20.3.5"
shading language version: "OpenGL ES GLSL ES 1.0.16"
vendor: "Broadcom"
renderer: "VC4 V3D 2.1"
Any ideas? Thanks in advance
It's possible that it won't work if you're trying to run it while a GUI, like X, is already running, and you have to stop X first, or start in console mode.
I'm planning to research how it could be working from a GUI, but I'm not sure that's even possible.
Okay, thanks a lot for your answer
Received the same error on a Raspberry Pi B+ and stopping the window server (systemctl stop display-manager) fixed it
I've added support for leasing with X in #5, which should fix the issue when running X as windowing manager.
I'll eventually add support for Wayland, but as this issue was primarily about X, I'm going to close it. Do not hesitate to re-open it or fill another issue if needed.
I had the same issue on the Raspberry Pi 5 and it was fixed but not running the GUI but just the console (using a raspbi-config setting).
@etale-cohomology thanks for the feedback. What version of Raspberry Pi OS do you use? I think recent versions now use Wayland and I only added DRM lease support for X, so that would explain why you have to use the console in that case.