Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 40057

Summary: nvidia-kernel bugs on 2.6 kernel
Product: Gentoo Linux Reporter: Stuart Herbert (RETIRED) <stuart>
Component: New packagesAssignee: Gentoo X packagers <x11>
Status: RESOLVED CANTFIX    
Severity: normal CC: centic, moixa, vapier
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Diff against nvidia-kernel-1.0.4363-r3.ebuild
Required diff for 2.6 kernel support; also available from www.minion.de

Description Stuart Herbert (RETIRED) gentoo-dev 2004-02-01 03:44:34 UTC
nvidia-kernel-1.0.5336 does not emerge.  Instead of passing KERNDIR into the nVidia makefile, you need to change that to say SYSSRC instead.  Then it'll emerge just fine.

nvidia-kernel-1.0.5336 does not work.  Starting X results in a kernel oops:

nvidia: no version magic, tainting kernel.
nvidia: module license 'NVIDIA' taints kernel.
0: nvidia: loading NVIDIA Linux x86 NVIDIA Kernel Module  1.0-5336  Wed Jan 14 1
8:29:26 PST 2004
Unable to handle kernel NULL pointer dereference at virtual address 00000080
 printing eip:
f8c8c9b5
*pde = 00000000
Oops: 0000 [#1]
CPU:    0
EIP:    0060:[<f8c8c9b5>]    Tainted: PF
EFLAGS: 00213286
EIP is at _nv004939rm+0x9/0x1c [nvidia]
eax: 00000000   ebx: eb1ee000   ecx: ef528000   edx: ef528000
esi: 00000000   edi: ef528000   ebp: ef56be58   esp: ef56be58
ds: 007b   es: 007b   ss: 0068
Process X (pid: 7753, threadinfo=ef56a000 task=f27ef320)
Stack: ef56be84 f8c5d3fe ef528000 00000000 ef528000 eb1ee000 ef528000 efed2c00
       f3336000 f8e10aa8 f8e10aa0 ef56bea8 f8c5c08d ef528000 00000000 00000000
       f8e386a0 f6d8a6c0 f8e10aa0 00000000 ef56beb4 f8c5db0c f8e386a0 ef56bee4
Call Trace: [<f8c5db0c>] rm_init_adapter+0xc/0x10 [nvidia]
 [<f8dc202c>] nv_kern_open+0x1cf/0x259 [nvidia]
 [<f8dc2b84>] nv_kern_isr+0x0/0x54 [nvidia]
 [<c0161d54>] chrdev_open+0xf4/0x220
 [<c01cb6c1>] devfs_open+0xe1/0xf0
 [<c0157981>] dentry_open+0x151/0x220
 [<c0157826>] filp_open+0x66/0x70
 [<c0157cc3>] sys_open+0x53/0x90
 [<c010b45b>] syscall_call+0x7/0xb

Code: 8b 90 80 00 00 00 50 51 8b 42 04 ff d0 89 ec 5d c3 89 f6 55

nvidia-kernel-1.0.4363 has an out-of-date patch for kernel 2.6 support.  I've attached the correct patch (available from www.minion.de), and a diff against nvidia-kernel-1.0.4363-r3.  My guess is that all of the other nvidia-kernel ebuilds also need updating.

With the correct patch, nvidia-kernel-1.0.4363 works fine for me under Linux-2.6.2_rc2 w/ my aging Abit GeForce 2 graphics card.

Stu

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Stuart Herbert (RETIRED) gentoo-dev 2004-02-01 03:45:27 UTC
Created attachment 24724 [details, diff]
Diff against nvidia-kernel-1.0.4363-r3.ebuild
Comment 2 Stuart Herbert (RETIRED) gentoo-dev 2004-02-01 03:46:46 UTC
Created attachment 24725 [details, diff]
Required diff for 2.6 kernel support; also available from www.minion.de
Comment 3 Donnie Berkholz (RETIRED) gentoo-dev 2004-02-01 14:06:37 UTC
Stuart:
supernova src # grep SYSSRC /usr/local/build/portage/nvidia-kernel-1.0.5336-r1/work/NVIDIA-Linux-x86-1.0-5336-pkg1/usr/src/nv/makefile
supernova src #

It isn't gonna do a whole lot. =P I suggest you cvs up and try again with 5336-r1.

And yeah the rest need updates.
Comment 4 Stuart Herbert (RETIRED) gentoo-dev 2004-02-01 15:04:28 UTC
Yup, -r1 compiles.  Nice one.  I'll give it a go in a moment, see if it runs or not.  These Abit cards are so dodgy, tho, that sometimes even the Windows Detonator drivers don't like them :(

Try unpacking the nvidia drivers without your makefile patch.  'make module SYSSRC=/usr/src/linux' works, and 'make module KERNDIR=/usr/src/linux' throws up the 'unable to identify kernel' error that people are complaining about on the forums.  The same error that the original ebuild has, btw.  And that's caused because some people never run 'make modules_install', which creates /lib/modules/`uname -r`/build.  Rather than pass KERNDIR, we really should detect the lack of /lib/modules/`uname -r`/build directory, and tell our users to go do a 'make modules_install' before emerging kernel modules.

All the original 'makefile' does is have Makefile symlink to the kbuild or nvidia Makefile, and then use that to compile.  make -dd clearly shows that SYSSRC gets passed through intact.  You should try it sometime.  Btw, KERNDIR isn't supported in the kbuild Makefile at all.

=P
Comment 5 Stuart Herbert (RETIRED) gentoo-dev 2004-02-01 15:16:03 UTC
Okay, the module still doesn't work.  There's no kernel panic, just X11 saying that it can't initialise the nvidia driver.

Back to driver 4363 for me for now.

Stu
Comment 6 Donnie Berkholz (RETIRED) gentoo-dev 2004-02-01 21:04:14 UTC
If it still doesn't work -- I assume you unloaded the old module first, so you weren't attempting to use an old kernel module with new nvidia-glx accidentally.
Comment 7 Stuart Herbert (RETIRED) gentoo-dev 2004-02-02 10:27:34 UTC
I rebooted the machine just to make sure that wasn't the case.

Stu
Comment 8 Andrew Bevitt 2004-05-10 20:44:39 UTC
Please test nvidia-kernel-5336-r3 (preferably with 2.6.6 kernel, but not essential) and report back please.
Comment 9 Stuart Herbert (RETIRED) gentoo-dev 2004-05-11 08:33:38 UTC
Okay - 5336-r3 doesn't work for me.  I get further, but end up with scrambled rubbish on the screen, and a forced reboot.  Back to 4363 once again.

Also, my fixes for the 4363 ebuild seem to have been lost when the nvidia drivers were removed from Portage that time.  Either that, or they were never committed in the first place.  Right now, the 4363-r3 ebuild does not work with any 2.6 kernel.  With the latest patches from minion.de, I can verify that 4363 works with 2.6.6 kernel.

Best regards,
Stu
Comment 10 Martin Schlemmer (RETIRED) gentoo-dev 2004-06-15 14:55:10 UTC
Can you try 5336-r4 please.
Comment 11 Donald 2004-07-08 17:27:20 UTC
On gentoo-dev-sources and developmental-sources 2.6.7, after emerging nvidia-kernel, type modprobe nvidia and the error message comes back saying Invalid Module Format.  Downloaded the latest driver from NVIDIA and it works like a charm.  
Comment 12 SpanKY gentoo-dev 2004-07-08 17:42:06 UTC
chances are it's because your /usr/src/linux symlink is wrong
Comment 13 Andrew Bevitt 2004-07-17 00:00:45 UTC
Closing this.

Stuarts stuff is badness in pci / other unknown yet
gentoo-dev-sources problem is in another bug.
Comment 14 Andrew Bevitt 2004-07-17 00:01:27 UTC
Closing this.

Stuarts stuff is badness in pci / other unknown yet
gentoo-dev-sources problem is in another bug.