nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   2.6.29 Debian is breaking NVIDIA (and other kernel module packages) (http://www.nvnews.net/vbulletin/showthread.php?t=131167)

djsmeg 04-06-09 12:16 PM

2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
Hi, this is an alert for Debian users out there. The newest kernel, 2.6.29 won't work with the NVIDIA drivers, AT ALL, at least, with the standard debian kernel packages. The NVIDIA standard installer won't work, neither will module assistant kernel packages or anything else. The reason: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521515

This bug is basically the complaint that 2.6.29 kernel headers are now shipped as two separate packages without symlinks associating the common elements to the specific kernel architecture headers. This was the practice with all kernel headers up till 2.6.29.

The change appears to be because KBUILD (the linux kernel build system) can now handle such split source trees. Sadly, a fair chunk of the NVIDIA driver build code, cannot (esp conftest.sh and the conftest.h file it generates). Who's at fault? I don't know, but it's clear that debian have deliberately taken this action (read the bug report- it's tagged wishlist/wontfix) and aren't about to back down from their purist stance.

We should campaign for NVIDIA to either support a "pure" KBUILD system (fix the conftest.sh stuff) or debian to re-add those symlinks.

Note, you can probably make these symlinks yourself, but it's actually a pretty convoluted mess- debian wanted to get rid of them because of this problem. I've made a couple of attempts and it's still not working for me :(

tzp 04-06-09 02:40 PM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
One more reason to compile the kernel yourself...
Do zcat /proc/config.gz on the Debian provided one and there you go...

ledoc 04-06-09 03:23 PM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
Can't you instlall the debian kernel_source package, extract it, and then compile against that?
It's a bit brute force, but should work?!

primerib 04-06-09 03:34 PM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
I've seen a few Debian guys with this problem as well. Does anyone know how/if Nvidia plans to address it, or what the best way to work around it is?

packermann 04-07-09 02:11 AM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
I'm on Debian, using the most recent beta-drivers (185.19) and before recent stable (180.44) with 2.6.29.1 vanilla-kernel, no problems at all. So as a workaround compile your own kernel instead of using just the provided headers.

microcris 04-07-09 04:46 AM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
Hi there :)

I installed the 2.6.29 kernel and in fact I can not install the nvidia driver by debian way or nvidia way :S
I understand what debian guys are trying to do. If there is a kbuild package, it should be used to build things. But what they are doing is breaking every thing that do not uses kbuild method. Sooner or later will be possible to install the nvidia driver by debian way but i really doubt if nvidia will spend time to change the way they build its kernel module.

Asriazh 04-07-09 05:20 AM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
It's pretty simple to fix. Grab your Nvidia driver package, like "NVIDIA-Linux-x86-180.44-pkg0.run" for example and extract it with "./NVIDIA-Linux-x86-180.44-pkg0.run -x". Then do "cd NVIDIA-Linux-x86-180.44-pkg0/usr/src/nv" and open "nv.c" there.
Locate all instances of code mentioning "owner" like ".owner = THIS_MODULE," and comment it out by using /* */ like this for example "/*.owner = THIS_MODULE,*/". Save the result and install the driver by going into the "NVIDIA-Linux-x86-180.44-pkg0" folder the extraction created and use "./nvidia-installer" to compile and install the kernel module against the 2.6.29 kernel source. This works with the ALSA module too.

-Asriazh

microcris 04-07-09 08:01 AM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
Quote:

Originally Posted by Asriazh (Post 1977482)
It's pretty simple to fix. Grab your Nvidia driver package, like "NVIDIA-Linux-x86-180.44-pkg0.run" for example and extract it with "./NVIDIA-Linux-x86-180.44-pkg0.run -x". Then do "cd NVIDIA-Linux-x86-180.44-pkg0/usr/src/nv" and open "nv.c" there.
Locate all instances of code mentioning "owner" like ".owner = THIS_MODULE," and comment it out by using /* */ like this for example "/*.owner = THIS_MODULE,*/". Save the result and install the driver by going into the "NVIDIA-Linux-x86-180.44-pkg0" folder the extraction created and use "./nvidia-installer" to compile and install the kernel module against the 2.6.29 kernel source. This works with the ALSA module too.

-Asriazh

I made what you said but had no luck :S

Code:

ERROR: The kernel header file
      '/lib/modules/2.6.29-1-amd64/build/include/linux/kernel.h' does not
      exist.  The most likely reason for this is that the kernel source path
      '/lib/modules/2.6.29-1-amd64/build' is incorrect.  Please make sure you
      have installed the kernel source files for your kernel and that they are
      properly configured; on Red Hat Linux systems, for example, be sure you
      have the 'kernel-source' or 'kernel-devel' RPM installed.  If you know
      the correct kernel source files are installed, you may specify the
      kernel source path with the '--kernel-source-path' command line option.
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.

it fails to build the module because the installer can't find the kernel headers...
From what I read, nvidia installer needs to use kbuild instead looking for headers in /lib/modules/<version>/build/

djsmeg 04-08-09 03:31 PM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
1 Attachment(s)
The only currently valid way to work around this issue is to build your own kernel, using the vanilla sources. If you want to do that, by all means go ahead. I prefer debian's modularized kernels- they're tested and are generally a known good kernel configuration (if a little be conservative at times).

Which is why this problem means I'm sticking on 2.6.28.

@Asriazh : Your fix is not for this problem. This problem is because debian ships a kernel package with the source header files (especially, the configuration source header files) separated from the rest of the kernel header files, following a change by KBuild to support such split header systems. Sadly, the NVIDIA build system doesn't fully utilise KBuild and fails to work.

sandman73 04-09-09 07:43 PM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
Hi,

waiting for the nvidia/debian package fix (wich I'm sure will come soon) I've used the debian "sub"way workaround below.

Building the vanilla with the debian configuration take a long time because it is a generic hw configuration and build everything, it is also already highly optimized so I don't see the need to build vanilla if you can avoid.
Configuring the kernel for your specific hw may also take a long time.

Code:

sudo apt-get install linux-source-2.6.29 linux-headers-2.6.29-1-686 nvidia-kernel-source
tar -C /usr/src -xjf /usr/src/linux-source-2.6.29.tar.bz2
cd /usr/src/linux-source-2.6.29
sed -i 's/^EXTRAVERSION =/EXTRAVERSION = -1-686/' Makefile
cp /boot/config-2.6.29-1-686 .config
make-kpkg --us --uc debian
make modules_prepare
ln -s ../linux-headers-2.6.29-1-686/Module.symvers
fakeroot make-kpkg --us --uc --added-modules nvidia-kernel modules_image

sudo dpkg -i  ../nvidia-kernel-2.6.29-1-686_180.29-1+2.6.29-1-686-10.00.Custom_i386.deb

Hope it help
bye

JackieBrown 04-09-09 10:04 PM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
Is there a place to report this? A nvidia bug tracker, perhaps? Not a forum post that gets no response in 4 days but something official.

The Debian bug tracker states that their configuration is compliant with the kernel standards so will nvidia look at this?

Even the option to pass arguments to the installer would be better than nothing.

zander 04-10-09 10:30 AM

Re: 2.6.29 Debian is breaking NVIDIA (and other kernel module packages)
 
This forum is the best place to report this kind of problem. I'll look at it as time permits, but I can't promise it'll be anytime soon.


All times are GMT -5. The time now is 02:56 PM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.