Repository navigation
[BUG] KMS: DRM_IOCTL_MODE_CREATE_DUMB failed: Permission denied #3
Description
Activity
Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.
I test on Trixie and Arch with a 3060 and 580.126.09 proprietary drivers.
Make sure your nvidia card is /dev/dri/renderD128 and make sure you are running the latest proprietary driver for your card.
Also I do not know unraid but you might need apparmor unconfined.
This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.
Updated docs from an unraid user that got it working
-
Driver: Proprietary drivers 580 or higher are required. Crucially, you should install the driver using the
.runfile downloaded directly from the Nvidia website.- Unraid: Use the production branch from the Nvidia Driver Plugin.
-
Kernel Parameter: You must set
nvidia-drm.modeset=1in your host bootloader.- Standard Linux (GRUB): Edit
/etc/default/gruband add the parameter to your existingGRUB_CMDLINE_LINUX_DEFAULTline:Then apply the changes by running:GRUB_CMDLINE_LINUX_DEFAULT="<other existing options> nvidia-drm.modeset=1"sudo update-grub
- Unraid (Syslinux): Edit the file
/boot/syslinux/syslinux.cfgand addnvidia-drm.modeset=1to the end of theappendline for the Unraid OS boot entry.
- Standard Linux (GRUB): Edit
-
Hardware Initialization: On headless systems, the Nvidia video card requires a physical dummy plug inserted into the GPU so that DRM initializes properly.
-
Docker Runtime: Configure the host docker daemon to use the Nvidia runtime:
sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker
Compose Configuration:
--- services: {{ project_name }}: image: lscr.io/{{ lsio_project_name_short }}/{{ project_name }}:{{ release_tag }} environment: - PIXELFLUX_WAYLAND=true # Ensure these point to the rendered node injected by the runtime (usually renderD128) - DRINODE=/dev/dri/renderD128 - DRI_NODE=/dev/dri/renderD128 deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [compute,video,graphics,utility]
- Unraid: Ensure you're properly setting the DRINODE, DRI_NODE and adding --gpus all --runtime nvidia to your extra parameters.
-
Hey @thelamer thanks for letting me know, but everythign was already configured for me exactly as you described.
I have the hdmi dummy in the nvidia gpu, the driver is correct, thenvidia-drm.modeset=1boot option is set and even rebooted, all the env variables are set properly and yet i am still getting the same error as initially posted.check dmesg you are looking for
[ 14.365976] [drm] [nvidia-drm] [GPU ID 0x00000700] Loading driver [ 16.311576] [drm] Initialized nvidia-drm 0.0.0 for 0000:07:00.0 on minor 1 [ 16.476157] fbcon: nvidia-drmdrmfb (fb0) is primary device [ 16.572517] nvidia 0000:07:00.0: [drm] fb0: nvidia-drmdrmfb frame buffer deviceJust in general post the output of
sudo dmesg |grep -i nvidia |grep -i drmAlso use a bare run command from cli to test.
docker run --rm -it -p 3001:3001 -e DRINODE=/dev/dri/renderD129 -e DRI_NODE=/dev/dri/renderD129 --runtime nvidia --gpus all --shm-size=1gb linuxserver/eden bashmy card is 129 on my system, you open a terminal and run
vkcubeas a smoke test (that is if you do not get permission denied. )2026-03-18.19-06-52.mp4
It can work and the user that confirmed it was on 580.142 and running a 4070 so it is not your card series or anything.
root@Tower:~# dmesg |grep -i nvidia |grep -i drm [ 0.000000] Command line: BOOT_IMAGE=/bzimage pcie_acs_override=downstream,multifunction vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot amd_pstate=guided initcall_blacklist=acpi_cpufreq_init nvidia-drm.modeset=1 [ 0.059183] Kernel command line: BOOT_IMAGE=/bzimage pcie_acs_override=downstream,multifunction vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot amd_pstate=guided initcall_blacklist=acpi_cpufreq_init nvidia-drm.modeset=1 [ 61.338106] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver [ 62.719948] [drm] Initialized nvidia-drm 0.0.0 for 0000:01:00.0 on minor 0 [ 62.832020] nvidia 0000:01:00.0: [drm] fb1: nvidia-drmdrmfb frame buffer deviceyour example docker run command has the same problem.
bump from 126 to 142 (is the production driver in unraid)
Confirm you ran the command with render node 128 and double check that is your nvidia card.
[ 16.476157] fbcon: nvidia-drmdrmfb (fb0) is primary deviceThis is not in dmesg I do not know if that matters or not.
If you have discord review this back and forth see if anything is missing they do have a primary device message in their logs, this is the user that confirmed functionality:
https://discord.com/channels/354974912613449730/1433842457048514684/1484231076418424854
I am just diffing out from the user that got it working vs your setup.
Another thing make sure kernel is above 6.6 (it should be). The working user was on
6.12.54-UnraidYes, i am also on
6.12.54-Unraid
I have now added a comment referencing the original reporter on github, maybe he can bring light into thisJust FYI I have discovered that unraid nvidia runtime is not compatible with wayland based solutions:
linuxserver/docker-jenkins-builder#393
Readme will be updated soon.
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsDone

Is there an existing issue for this?
Current Behavior
Hey, i just read that nvidia support should be included. I had this container previously running without nvidia support (or any GPU passed at all) and the container run without issues (if you call 0.5-1 fps "running").
Now after running the command
nvidia-modprobe --modeseton my unraid host and then running the container with the nvidia gpu passed through like shown in my docker run, the container is not starting correctly anymore.Expected Behavior
Should run with nvidia support
Steps To Reproduce
Environment
CPU architecture
x86-64
Docker creation
Container logs