LINUX.ORG.RU

Если кому нужно собрать nvidia-drivers-367.35 для ядра 4.7 на Gentoo

 , ,


1

1

Вот здесь есть патчик для драйвера, который можно закинуть вот сюда /etc/portage/patches/x11-drivers/nvidia-drivers-367.35/nvidia-drivers-367.35-kernel-4.7.patch и у вас все собирется.

Однако хочу отметить, что в патче я сильно не разбирался, но ничего серьезного на вид там нету, закоментили одну функцию и убрали лишний(?) аргумент из пары вызывов.

Удачи!

★★★★★

Вот код самого патча.

diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-fb.c b/kernel/nvidia-drm/nvidia-drm-fb.c
--- NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-fb.c	2016-06-10 02:38:43.000000000 +0200
+++ b/kernel/nvidia-drm/nvidia-drm-fb.c	2016-06-14 02:45:44.263506669 +0200
@@ -114,7 +114,7 @@
      * We don't support any planar format, pick up first buffer only.
      */
 
-    gem = drm_gem_object_lookup(dev, file, cmd->handles[0]);
+    gem = drm_gem_object_lookup(file, cmd->handles[0]);
 
     if (gem == NULL)
     {
diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-gem.c b/kernel/nvidia-drm/nvidia-drm-gem.c
--- NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-gem.c	2016-06-10 02:38:43.000000000 +0200
+++ b/kernel/nvidia-drm/nvidia-drm-gem.c	2016-06-14 02:45:44.263506669 +0200
@@ -408,7 +408,7 @@
 
     mutex_lock(&dev->struct_mutex);
 
-    gem = drm_gem_object_lookup(dev, file, handle);
+    gem = drm_gem_object_lookup(file, handle);
 
     if (gem == NULL)
     {
diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-uvm/uvm_linux.h b/kernel/nvidia-uvm/uvm_linux.h
--- NVIDIA-Linux-x86_64-367.27/kernel/nvidia-uvm/uvm_linux.h	2016-06-10 02:37:08.000000000 +0200
+++ b/kernel/nvidia-uvm/uvm_linux.h	2016-06-14 02:49:35.214495381 +0200
@@ -563,12 +563,13 @@
     INIT_RADIX_TREE(tree, GFP_NOWAIT);
 }
 
+/*
 static bool radix_tree_empty(struct radix_tree_root *tree)
 {
     void *dummy;
     return radix_tree_gang_lookup(tree, &dummy, 0, 1) == 0;
 }
-
+*/
 
 #if !defined(NV_USLEEP_RANGE_PRESENT)
 static void __sched usleep_range(unsigned long min, unsigned long max)

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

И да, все вопросы к автору. Я только поделился тем, что мне помогло.

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

После патча кусок будет закомментирован. Что не так?

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

у меня нет невидии, я тут вообще мимокрокодил.

Просто нафига в патче выключать кусок кода комментарием и плодить «мертвые» части файла? Что мешает тот же кусок тупо удалить, а уже потом натравливать на это дело diff?

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

А с этим nvidia-340.96-4.6-4.7.patch работает для 4.7 (на 4.6 не проверял) Все упомянутые выше заплатки там.

Спасибо добрый человек. Работает с 4.7.2.

andreyu ★★★★★
()

У меня в Manjaro 367.36.02 и всё работает на 4.7. Мантейнеры, видимо, сами всё пропатчили и положили в репы, люблю их))

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

А не гномосек ли ты часом? Мажора, странные наклонности, всё сходится!

anonymous
()
Ответ на: комментарий от andreyu

Да пофигу, я имел ввиду что у меня оно с моей видюшкой нормально работает :)

deterok ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.