LINUX.ORG.RU

Проблема с компиляцией nvidia модуля для ядра 2.6.20


0

0

Debian, x86, видео карта nvidia.

Вчера решил собрать новое ядро (уж очень интересно поиграться с kvm). 
Так вот, ядро собралось и встало на ура, но вот установка родных 
драйверов nvidia заканчивается неудачно, в логах следующее:

     Building modules, stage 2.
   make -f /usr/src/linux-2.6.20/scripts/Makefile.modpost
     scripts/mod/modpost -m  -i /usr/src/linux-2.6.20/Module.symvers -I /tmp/se
   lfgz7054/NVIDIA-Linux-x86-1.0-9631-pkg1/usr/src/nv/Module.symvers -o /tmp/se
   lfgz7054/NVIDIA-Linux-x86-1.0-9631-pkg1/usr/src/nv/Module.symvers -w vmlinux
   /tmp/selfgz7054/NVIDIA-Linux-x86-1.0-9631-pkg1/usr/src/nv/nvidia.o
   FATAL: modpost: GPL-incompatible module nvidia.ko uses GPL-only symbol 'para
   virt_ops'
   make[4]: *** [__modpost] Ошибка 1
   make[3]: *** [modules] Ошибка 2
   make[2]: *** [modules] Ошибка 2
   NVIDIA: left KBUILD.
   nvidia.ko failed to build!
   make[1]: *** [module] Ошибка 1
   make: *** [module] Ошибка 2
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
ERROR: Installation has failed.  Please see the file
       '/var/log/nvidia-installer.log' for details.  You may find suggestions
       on fixing installation problems in the README available on the Linux
       driver download page at www.nvidia.com.

особо вчера разбираться с этим времени не было. 
Но сегодня с утра я погуглил на эту тему и нашел, что у людей были подобные проблемы и решались они ОТКЛЮЧЕНИЕМ в ядре опции паравиртуализации. Я еще это не попробовал, но всё равно, это не очень здорово лишаться прелестей kvm из-за драйвера к видюхе. Кто-нибудь сталкивался с подобным?

1) а у тебя процессор поддерживает виртуализацию(x86 -?) если нет- она тебе нах не нужна.

2)сам включал на посмотреть для qemu этот kvm(не помогло), но у меня nvidia установилась без проблем.

3)посмотри на секцию про подгружаемые модули. у тебя на это ругается.

mic ★★★★★
()

Плохо как-то гуглил.
На первой же странице видим 
http://www.cafuego.net/stuff/2.6.20-paravirt-nvidia.patch

--------cut----------

diff -urN linux-2.6.20/arch/i386/kernel/paravirt.c linux-2.6.20-free/arch/i386/kernel/paravirt.c
--- linux-2.6.20/arch/i386/kernel/paravirt.c	2007-02-05 05:44:54.000000000 +1100
+++ linux-2.6.20-free/arch/i386/kernel/paravirt.c	2007-02-05 09:14:43.000000000 +1100
@@ -573,4 +573,4 @@
  * internal-only export of this, until it gets sorted out and
  * all lowlevel CPU ops used by modules are separately exported.
  */
-EXPORT_SYMBOL_GPL(paravirt_ops);
+EXPORT_SYMBOL(paravirt_ops);
Binary files linux-2.6.20/scripts/kconfig/mconf and linux-2.6.20-free/scripts/kconfig/mconf differ

--------cut----------
Накладываем и все работает. Сам пользуюсь. Патч впринципе смешной.

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

а толку от этого патча если у меня проц не поддерживает не поддерживает виртуализацию :) это я ступил, что сразу не посмотрел как kmv работает.

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