- Вопрос или проблема
- Ответ или решение
- Ошибка BadValue (integer parameter out of range for operation) в FreeBSD 14.1 с Mesa libs
- 1. Описание оборудования
- 2. Проверка установленных драйверов
- 3. Удаление лишних драйверов
- 4. Проверка конфигурации /etc/rc.conf и /boot/loader.conf
- 5. Проверка вывода dmesg
- 6. Возможные проблемы с Mesa
- 7. Тестирование
- Заключение
Вопрос или проблема
Сейчас я использую FreeBSD 14.1 и подозреваю, что библиотеки Mesa, установленные на системе, имеют ошибки, или, возможно, у меня есть неправильная настройка, потому что, когда я делаю :
# glxinfo | grep Mesa
Я получаю ошибку, которую вы видите в заголовке, и smplayer/mpv/vlc вообще не работает. В любом случае, это контекст, в котором возникает ошибка :
У меня 3 графических процессора :
1)
00:02.0 VGA совместимый контроллер: Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630]
01:00.0 VGA совместимый контроллер: NVIDIA Corporation GP106 [GeForce GTX 1060 3GB]
01:00.1 Аудиоустройство: NVIDIA Corporation GP106 High Definition Audio Controller
02:00.0 VGA совместимый контроллер: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti]
02:00.1 Аудиоустройство: NVIDIA Corporation TU102 High Definition Audio Controller
02:00.2 USB контроллер: NVIDIA Corporation TU102 USB 3.1 Host Controller
02:00.3 Контроллер последовательной шины: NVIDIA Corporation TU102 USB Type-C UCSI Controller
Я не использую никакой xorg.conf.
nano /etc/rc.conf :
kld_list="nvidia-modeset nvidia-drm linux i915kms ext2fs"
nano /boot/loader.conf :
pptdevs="1/0/0 1/0/1 2/0/0 2/0/1 2/0/2 2/0/3 4/0/0"
hw.nvidiadrm.modeset=1
Вот где проблема :
[marietto@marietto ~]==> glxinfo | grep Mesa
X Ошибка неудачного запроса: BadValue (целевой параметр вне диапазона для операции)
Главный код неудачного запроса: 151 (GLX)
Второстепенный код неудачного запроса: 24 (X_GLXCreateNewContext)
Значение в неудачном запросе: 0x0
Серийный номер неудачного запроса: 50
Текущий серийный номер в выходном потоке: 51
Я установил следующие пакеты :
# pkg install xf86-video-intel nvidia-drm-kmod drm-kmod nvidia-driver
Я также пытался проверить, есть ли у меня та же ошибка, удалив xf86-video-intel и используя драйвер i915kms с Xorg :
# pkg remove xf86-video-intel
# nano /etc/X11/xorg.conf
Раздел "Устройство"
Идентификатор "Intel Graphics"
Драйвер "i915kms"
КонецРаздела
Но я получил ту же ошибку. Возможно, это ошибка Mesa.
Каково одно из последствий этой “ошибки”? вот это :
==> scrcpy --tcpip=192.168.1.3:5555
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
ИНФОРМАЦИЯ: Подключение к 192.168.1.3:5555...
ИНФОРМАЦИЯ: Подключено к 192.168.1.3:5555
/usr/local/share/scrcpy/scrcpy-server: 1 файл передан, 0 пропущено. 34.1 МБ/с (71200 байт за 0.002с)
[сервер] ИНФОРМАЦИЯ: Устройство: [samsung] samsung SM-N9005 (Android 9)
[сервер] ВНИМАНИЕ: Аудио отключено: оно не поддерживается до Android 11
X Ошибка неудачного запроса: BadValue (целевой параметр вне диапазона для операции)
Главный код неудачного запроса: 152 (GLX)
Второстепенный код неудачного запроса: 3 (X_GLXCreateContext)
Значение в неудачном запросе: 0x0
Серийный номер неудачного запроса: 147
Текущий серийный номер в выходном потоке: 148
Ответ или решение
Ошибка BadValue (integer parameter out of range for operation) в FreeBSD 14.1 с Mesa libs
Описанная вами проблема, связанная с ошибкой X Error of failed request: BadValue (integer parameter out of range for operation) при использовании glxinfo
и других мультимедийных приложений (таких как smplayer, mpv и vlc), может быть связана с несколькими факторами, включая неправильную конфигурацию драйверов или возможные ошибки в версиях библиотек Mesa, которые вы используете. Рассмотрим основные шаги для диагностики и устранения этой проблемы.
1. Описание оборудования
У вас установлено три видеокарты, а именно:
- Intel UHD Graphics 630 (CoffeeLake-S GT2)
- NVIDIA GeForce GTX 1060 3GB
- NVIDIA GeForce RTX 2080 Ti
Это разнообразие графических адаптеров может привести к конфликтам между драйверами и неправильной работе X-сервера, особенно в случае, если они неправильно настроены.
2. Проверка установленных драйверов
Проверьте, что у вас обновлены все драйверы и библиотеки. Используйте следующие команды для обновления ваших пакетов:
pkg update
pkg upgrade
Также убедитесь, что установлены следующие ключевые пакеты:
pkg install xf86-video-intel nvidia-drm-kmod drm-kmod nvidia-driver mesa-libs
3. Удаление лишних драйверов
Если у вас установлены драйверы для Intel, убедитесь, что либо используете только один из них, либо конфигурация Xorg правильно сопоставлена с необходимой видеокартой. Например, можно временно удалить драйвер xf86-video-intel
, как вы уже пробовали:
pkg remove xf86-video-intel
После этого файл конфигурации Xorg может выглядеть так:
Section "Device"
Identifier "NVIDIA Graphics"
Driver "nvidia"
EndSection
Section "Device"
Identifier "Intel Graphics"
Driver "i915"
BusID "PCI:0:2:0"
EndSection
4. Проверка конфигурации /etc/rc.conf
и /boot/loader.conf
В вашем случае конфигурация /etc/rc.conf
выглядит правильно, однако, убедитесь, что отсутствуют конфликты:
kld_list="nvidia-modeset nvidia-drm i915kms"
Также проверьте, чтобы ваши настройки в /boot/loader.conf
были корректными. Убедитесь, что параметр hw.nvidiadrm.modeset
установлен в 1
, это может помочь включить режим работы DRM для NVIDIA.
5. Проверка вывода dmesg
Посмотрите вывод dmesg
на наличие ошибок, связанных с драйверами и видеокартами:
dmesg | grep drm
dmesg | grep nvidia
Это поможет выявить проблемные моменты во время загрузки модулей драйверов.
6. Возможные проблемы с Mesa
Если проблема сохраняется, возможно, действительно есть ошибка в Mesa или в конфигурации X. Вы можете попробовать временно установить более раннюю версию Mesa или попробовать использовать бинарные сборки из FreeBSD репозиториев.
7. Тестирование
После каждого изменения или удаления драйверов не забудьте перезапустить X-сервер или систему:
service reboot
Заключение
Если ни один из предложенных шагов не решает проблему, рекомендуется обратиться к сообществу FreeBSD, например, на форумы или в списки рассылки, с указанием всех действий, которые вы предприняли. Вполне возможно, что проблема может быть связана с несовместимостью версий драйверов или библиотек, и другие пользователи смогут поделиться своим опытом по решению аналогичной проблемы.