LINUX.ORG.RU

NVIDIA(GPU-0): Failed to acquire modesetting permission

 , , ,


0

1

Всем здравствуйте.

Пытаюсь настроить X11 в современном Devuan Linux 5 (Daedalus), дабы всё работало через закрытый драйвер nVidia.

Видеоплата старая, GeForce GTX 560 Ti. Драйвер, соответственно, тоже старый (v390). Загрузка через BIOS (он же CSM).

В старом Debian Linux (кажется, там был Squeeze, т.е. версия ~2014 года) ровно та же конфигурация с ровно теми же настройками работает.

В новой версии Devuan при запуске X11 вижу следующее:

[   315.961] (II) xfree86: Adding drm device (/dev/dri/card0)
[   315.961] (II) Platform probe for /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0
[   315.961] (II) seatd_libseat try open graphics /dev/dri/card0
[   315.961] (DB) [libseat/backend/logind.c:161] DRM device opened, current total: 1
[   315.961] (II) seatd_libseat opened graphics: /dev/dri/card0 (13:13)
[   315.962] (--) PCI:*(1@0:0:0) 10de:1200:1043:8390 rev 161, Mem @ 0xf2000000/33554432, 0xe0000000/134217728, 0xe8000000/67108864, I/O @ 0x0000e000/128, BIOS @ 0x????????/131072
[   315.962] (II) LoadModule: "glx"
[   315.963] (II) Loading /usr/lib/xorg/modules/linux/libglx.so
[   315.965] (II) Module glx: vendor="NVIDIA Corporation"
[   315.965] 	compiled for 4.0.2, module version = 1.0.0
[   315.965] 	Module class: X.Org Server Extension
[   315.965] (II) NVIDIA GLX Module  390.157  Wed Oct 12 09:19:15 UTC 2022
[   315.965] (II) LoadModule: "nvidia"
[   315.965] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[   315.966] (II) Module nvidia: vendor="NVIDIA Corporation"
[   315.966] 	compiled for 4.0.2, module version = 1.0.0
[   315.966] 	Module class: X.Org Video Driver
[   315.966] (II) NVIDIA dlloader X Driver  390.157  Wed Oct 12 09:21:41 UTC 2022
[   315.966] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   315.966] (II) Loading sub module "fb"
[   315.966] (II) LoadModule: "fb"
[   315.966] (II) Module "fb" already built-in
[   315.966] (II) Loading sub module "wfb"
[   315.966] (II) LoadModule: "wfb"
[   315.966] (II) Loading /usr/lib/xorg/modules/libwfb.so
[   315.966] (II) Module wfb: vendor="X.Org Foundation"
[   315.966] 	compiled for 1.21.1.7, module version = 1.0.0
[   315.966] 	ABI class: X.Org ANSI C Emulation, version 0.4
[   315.966] (II) Loading sub module "ramdac"
[   315.966] (II) LoadModule: "ramdac"
[   315.966] (II) Module "ramdac" already built-in
[   315.966] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[   315.966] (==) NVIDIA(0): RGB weight 888
[   315.966] (==) NVIDIA(0): Default visual is TrueColor
[   315.966] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[   315.966] (**) NVIDIA(0): Enabling 2D acceleration
[   315.967] (--) NVIDIA(0): Valid display device(s) on GPU-0 at PCI:1:0:0
[   315.967] (--) NVIDIA(0):     CRT-0
[   315.967] (--) NVIDIA(0):     CRT-1
[   315.967] (--) NVIDIA(0):     DFP-0 (boot)
[   315.967] (--) NVIDIA(0):     DFP-1
[   315.967] (--) NVIDIA(0):     DFP-2
[   315.968] (II) NVIDIA(0): NVIDIA GPU GeForce GTX 560 Ti (GF114) at PCI:1:0:0 (GPU-0)
[   315.968] (--) NVIDIA(0): Memory: 1048576 kBytes
[   315.968] (--) NVIDIA(0): VideoBIOS: 70.24.11.00.01
[   315.968] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[   315.968] (EE) NVIDIA(GPU-0): Failed to acquire modesetting permission.
[   315.968] (EE) NVIDIA(0): Failing initialization of X screen 0

Замена nvidia на fbdev или vesa ни к чему хорошему не приводит.

На старте используется vesafb, но выключение оного с переходом в 80x25 тоже ни на что не влияет:

$ cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-6.1.0-38-amd64 root=/dev/mapper/... ro vga=0x31b video=vesafb:mtrr:3,ywrap

Поведение идентично в ядрах версий 6.1 и 5.10, так что это непохоже на проблемы совместимости старых драйверов с новыми ядрами.

Предвосхищая вопросы, добавлю, что

  1. nouveau внесён в чёрный список и
  2. nvidia_drm использует KMS.

Как лечить?

★★★★★

Последнее исправление: Bass (всего исправлений: 3)

6.1.0-38

мля, как я ненавижу эту дебилиановскую нумерацию версий ядра… какая это версия по-человечески?

проверь, не напихали ли туда девуанщики каких левых патчей, как в арче.

anonymous
()
Ответ на: комментарий от anonymous
$ find /dev/dri | xargs ls -ld
drwxr-xr-x 3 root root       100 авг 26 03:40 /dev/dri
drwxr-xr-x 2 root root        80 авг 26 03:40 /dev/dri/by-path
lrwxrwxrwx 1 root root         8 авг 26 03:40 /dev/dri/by-path/pci-0000:01:00.0-card -> ../card0
lrwxrwxrwx 1 root root        13 авг 26 03:40 /dev/dri/by-path/pci-0000:01:00.0-render -> ../renderD128
crw-rw---- 1 root video 226,   0 авг 26 03:40 /dev/dri/card0
crw-rw-rw- 1 root video 226, 128 авг 26 03:40 /dev/dri/renderD128

Пользователь добавлен в группу video (но и при запуске «иксов» от рута ровно та же история), т.е. проблема не в правах.

Bass ★★★★★
() автор топика
Последнее исправление: Bass (всего исправлений: 1)
Ответ на: комментарий от PunkPerson
$ lsmod | grep -E 'nvidia|nouveau'
nvidia_uvm            954368  0
nvidia_drm             53248  0
drm_kms_helper        212992  1 nvidia_drm
drm                   614400  3 drm_kms_helper,nvidia_drm
nvidia_modeset       1060864  1 nvidia_drm
nvidia              15896576  2 nvidia_uvm,nvidia_modeset
ipmi_msghandler        77824  2 ipmi_devintf,nvidia
video                  65536  2 nvidia,asus_wmi

Полностью здесь.

Bass ★★★★★
() автор топика

Failed to acquire modesetting permission вообще эта ошибка означает, что какой-то процесс уже открыл /dev/dri/card0 и стал KMS мастером, а процесс Xorg стать KMS мастером из-за этого не может. Может попробовать поискать процесс открывший /dev/dri/card0? fuser -vu /dev/dri/card0.

iliyap ★★★★★
()
Ответ на: комментарий от PunkPerson
Tue Aug 26 21:51:58 2025       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.157                Driver Version: 390.157                   |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 560 Ti  Off  | 00000000:01:00.0 N/A |                  N/A |
| 14%   28C   P12    N/A /  N/A |      0MiB /   959MiB |     N/A      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0                    Not Supported                                       |
+-----------------------------------------------------------------------------+
Bass ★★★★★
() автор топика

Возможно тебе будет лень, но я бы попробовал сначала найти на какой версии дистра это началось, а потом проверить виновно ли ядро или иксы (ставя разные ядра). Или может быть виновен вообще конфиг.

firkax ★★★★★
()
Ответ на: комментарий от firkax

Да, сейчас таки буду ставить разные ядра и выяснять бинарным поиском. На 2.6 и 3.2 всё работало.

390-й драйвер установлен из 4-й версии Devuan (Chimaera). Из Daedalus его выкинули, ибо nVidia прекратила поддержку.

Bass ★★★★★
() автор топика
Последнее исправление: Bass (всего исправлений: 1)
Ответ на: комментарий от LongLiveUbuntu

Не подходит.

Там двойной загрузкой стоит Оффтопик XP (потому и BIOS, собственно), и она нужна как раз на голом железе.

А последнее, что XP поддерживала — это GTX 980 Ti.

У меня такая железка тоже есть, поэтому в перспективе буду ставить либо GTX 980, либо GT 730 с пассивным охлаждением.

Но что-то подсказывает мне, что проблемы с X11 в Linux от замены видеоплаты не зависят.

Bass ★★★★★
() автор топика
Ответ на: комментарий от LongLiveUbuntu

Очень весомый аргумент за то чтоб это поделие не покупать. За 30к можно 3-4 компа собрать, а тут один адаптер видеоразъёма почему- то столько стоит.

firkax ★★★★★
()