linux-4.9.6-gentoo-r1 и nvidia-drivers-340.101

Добрый вечер.
Не запускаются иксы xfce4 под такой сборкой linux-4.9.6-gentoo-r1 и nvidia-drivers-340.101.
[ebuild R ] x11-drivers/nvidia-drivers-340.101:0/340::gentoo USE="X multilib static-libs tools -acpi -pax_kernel -uvm" 0 KiB
[ 39.172] (II) LoadModule: "nvidia"
[ 39.172] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
[ 39.173] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 39.173] compiled for 4.0.2, module version = 1.0.0
[ 39.173] Module class: X.Org Video Driver
[ 39.173] (II) LoadModule: "kbd"
[ 39.173] (II) Loading /usr/lib64/xorg/modules/input/kbd_drv.so
[ 39.173] (II) Module kbd: vendor="X.Org Foundation"
[ 39.173] compiled for 1.17.4, module version = 1.8.1
[ 39.173] Module class: X.Org XInput Driver
[ 39.173] ABI class: X.Org XInput driver, version 21.0
[ 39.173] (II) LoadModule: "mouse"
[ 39.173] (II) Loading /usr/lib64/xorg/modules/input/mouse_drv.so
[ 39.173] (II) Module mouse: vendor="X.Org Foundation"
[ 39.173] compiled for 1.17.4, module version = 1.9.1
[ 39.173] Module class: X.Org XInput Driver
[ 39.173] ABI class: X.Org XInput driver, version 21.0
[ 39.173] (II) NVIDIA dlloader X Driver 340.101 Thu Dec 1 14:50:13 PST 2016
[ 39.173] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[ 39.173] (--) using VT number 7

[ 39.176] (II) Loading sub module "fb"
[ 39.176] (II) LoadModule: "fb"
[ 39.177] (II) Loading /usr/lib64/xorg/modules/libfb.so
[ 39.177] (II) Module fb: vendor="X.Org Foundation"
[ 39.177] compiled for 1.17.4, module version = 1.0.0
[ 39.177] ABI class: X.Org ANSI C Emulation, version 0.4
[ 39.177] (WW) Unresolved symbol: fbGetGCPrivateKey
[ 39.177] (II) Loading sub module "wfb"
[ 39.177] (II) LoadModule: "wfb"
[ 39.177] (II) Loading /usr/lib64/xorg/modules/libwfb.so
[ 39.178] (II) Module wfb: vendor="X.Org Foundation"
[ 39.178] compiled for 1.17.4, module version = 1.0.0
[ 39.178] ABI class: X.Org ANSI C Emulation, version 0.4
[ 39.178] (II) Loading sub module "ramdac"
[ 39.178] (II) LoadModule: "ramdac"
[ 39.178] (II) Module "ramdac" already built-in
[ 39.212] (EE) NVIDIA: Failed to initialize the NVIDIA kernel module. Please see the
[ 39.212] (EE) NVIDIA: system's kernel log for additional error messages and
[ 39.212] (EE) NVIDIA: consult the NVIDIA README for details.
[ 39.212] (EE) No devices detected.
[ 39.212] (EE)
Fatal server error:
[ 39.212] (EE) no screens found(EE)
[ 39.212] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 39.212] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 39.212] (EE)

полный лог иксов.
http://pastebin.com/U28DswAb

Попробовал пере собрать nvidia-drivers, пере сборка завершилась без ошибок.
Сейчас откатился обратно на Linux 4.4.39-gentoo x86_64
Как быть. как я понимаю в ядре не создает модуль nvidia.

Патч

bagas написал(а):
Попробовал пере собрать nvidia-drivers, пере сборка завершилась без ошибок.
Сейчас откатился обратно на Linux 4.4.39-gentoo x86_64
Как быть. как я понимаю в ядре не создает модуль nvidia.

Надо патчить драйвер Нвидиа. Положи по адресу /etc/portage/patches/x11-drivers/nvidia-drivers-340.101/nvidia-340.101-kernel-4.9.patch следующий код:


diff -Naur a/kernel/nv-drm.c b/kernel/nv-drm.c
--- a/kernel/nv-drm.c	2016-12-15 12:41:26.000000000 +0100
+++ b/kernel/nv-drm.c	2016-12-15 12:58:48.000000000 +0100
@@ -115,7 +115,11 @@
 };
 
 static struct drm_driver nv_drm_driver = {
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+    .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY,
+#else
     .driver_features = DRIVER_GEM | DRIVER_PRIME,
+#endif
     .load = nv_drm_load,
     .unload = nv_drm_unload,
     .fops = &nv_drm_fops,

ТО-есть ядра это больше не

ТО-есть ядра это больше не поддерживает эту версию дров nvidia что ле?
тогда почему при пере сборке дров нвидиа, ошибок не было ни каких.

Что бы ты не делал , жизнь слишком коротка!
Блог о BSD системах.

Почему в одних случаях пач

Почему в одних случаях пач нужен, в других - не нужен? Что он делает?

Так же очевидно из

Так же очевидно из заплатки:

+ .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY,

А если уж хочется совсем подробно - код открой! :)

h4e написал(а): bagas

h4e написал(а):
bagas написал(а):
Попробовал пере собрать nvidia-drivers, пере сборка завершилась без ошибок.
Сейчас откатился обратно на Linux 4.4.39-gentoo x86_64
Как быть. как я понимаю в ядре не создает модуль nvidia.

Надо патчить драйвер Нвидиа. Положи по адресу /etc/portage/patches/x11-drivers/nvidia-drivers-340.101/nvidia-340.101-kernel-4.9.patch следующий код:


diff -Naur a/kernel/nv-drm.c b/kernel/nv-drm.c
--- a/kernel/nv-drm.c	2016-12-15 12:41:26.000000000 +0100
+++ b/kernel/nv-drm.c	2016-12-15 12:58:48.000000000 +0100
@@ -115,7 +115,11 @@
 };
 
 static struct drm_driver nv_drm_driver = {
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+    .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY,
+#else
     .driver_features = DRIVER_GEM | DRIVER_PRIME,
+#endif
     .load = nv_drm_load,
     .unload = nv_drm_unload,
     .fops = &nv_drm_fops,

Спасибо, пора менять железо. )

Что бы ты не делал , жизнь слишком коротка!
Блог о BSD системах.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".