View previous topic :: View next topic |
Author |
Message |
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Sat May 13, 2006 10:17 pm Post subject: nvidia module needs unknown symbols [Solved] |
|
|
I upgraded the kernel from 2.6.16-r4 to 2.6.16-r7 yesterday, and when I re-emerged nvidia-kernel, I got this:
Code: | WARNING: //lib/modules/2.6.16-gentoo-r7/video/nvidia.ko needs unknown symbol remap_page_range
WARNING: //lib/modules/2.6.16-gentoo-r7/video/nvidia.ko needs unknown symbol pci_find_class |
When modprobing, it fails and dmesg tells the same as above.
Solution:
Turn off ccache during emerge.
Code: | FEATURES="-ccache" emerge nvidia-drivers |
A more elegant solution would probably be using the per-package module from portage-bashrc-ng.
The following is redundant!
The version of the driver is 8756, I also tried the stable version and the 8178. I also tried installed 8174 from nvidia.com manually with a patch I got from nvnews forums issuing exactly this situation.
I tried it back with 2.6.16-r4, but suddenly, that didn't work out either, and also 2.6.15-r8.
The kernel sources symlink was always correct and the driver compiled cleanly, except for some warnings concerning that problem:
Code: | #warning "conftest.sh failed, assuming remap_page_range(4)!" |
In Makefile.kbuild, I found:
Code: | ifeq ($(shell $(CONFTEST) pci_get_class), 1)
EXTRA_CFLAGS += -DNV_PCI_GET_CLASS_PRESENT
endif |
and
Code: |
ifeq ($(shell $(CONFTEST) remap_pfn_range), 1)
EXTRA_CFLAGS += -DNV_REMAP_PFN_RANGE_PRESENT
else
REMAP_PAGE_RANGE := $(shell $(CONFTEST) remap_page_range)
ifeq ($(REMAP_PAGE_RANGE), 5)
EXTRA_CFLAGS += -DNV_REMAP_PAGE_RANGE_5_PRESENT
endif
ifeq ($(REMAP_PAGE_RANGE), 4)
EXTRA_CFLAGS += -DNV_REMAP_PAGE_RANGE_4_PRESENT
endif
endif |
where the latter is analog to the warning, and both refer to the missing symbols. What bothers me most it that neither the kernel nor this Makefile has changed since it worked last (at least when switching back to 2.6.16-r4).
Every thread I found here and on other boards was solved by using a 15-kernel or a newer driver version, which didn't work for me.
Last edited by tek0 on Mon Aug 28, 2006 2:01 pm; edited 3 times in total |
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
|
Back to top |
|
|
tost Guru
Joined: 10 Dec 2005 Posts: 506
|
Posted: Sun May 21, 2006 3:49 pm Post subject: |
|
|
How do i use this patch ?
I´m a bit confused |
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Sun May 21, 2006 8:23 pm Post subject: |
|
|
It is explained in that thread:
Quote: |
# sh /path/to/NVIDIA-Linux-x86-1.0-8178-pkg1.run --extract-only
# cd NVIDIA-Linux-x86-1.0-8178-pkg1
# patch -p0 < /path/to/NVIDIA_kernel-1.0-8178-U012206.diff.txt
# ./nvidia-installer -n
|
the .run package can be obtained from nvidia.com. keep an eye for the version no.! |
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Thu Jun 15, 2006 10:29 pm Post subject: |
|
|
I found a better solution that made the patch redundant. I simply added aliases for the missing symbols in /etc/modules.d/nvidia:
Quote: |
alias pci_find_class pci_get_class
# and maybe, dunno (I didn't need this one, oddly enough)
alias remap_page_range remap_pfn_range
|
|
|
Back to top |
|
|
Trejkaz Guru
Joined: 14 Nov 2002 Posts: 479 Location: Sydney, Australia
|
Posted: Fri Jun 16, 2006 5:59 am Post subject: |
|
|
I just tried the alias trick and it didn't work for me. I ended up installing the latest unstable drivers.
Funny how the drivers which are masked, work, while the drivers which are unmasked, don't.
I guess this is just one more reason to add to the pile of reasons that NVIDIA should open source their driver. :-/ |
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Fri Jun 16, 2006 10:55 am Post subject: |
|
|
it surely is. And having one of the testing drivers was also neccessary for me - with older ones, I had even more symbols missing.
Did you run depmod and modules-update && friends (whatever)? |
|
Back to top |
|
|
Naib Watchman
Joined: 21 May 2004 Posts: 6053 Location: Removed by Neddy
|
Posted: Fri Jun 16, 2006 5:01 pm Post subject: |
|
|
That "Alias" trick did not work for me either
Kernel: 2.6.16-r9
nvidia-kernel (trying) : nvidia-kernel-1.0.8762 (same problem with nvidia-kernel-1.0.8756)
Originally I had:
Kernel 2.6.15-r1 + nvidia-kernel-1.0.8756 working fine!
new kernel comes out so I try that out and emerging the nvidia-kernel causes those missing symbols error
I carry on using working combo
New nvidia-kernel comes out (nvidia-kernel-1.0.8762) trying that against kernel-2.6.15-r1 results in the missinh symbols
so I try to go back to nvidia-kernel-1.0.8756 but that produces the same missing symbols
WTF!!! that was a previously working combination tha tis now broken!!!!
I re-compile my kernel and try to re-emerge nvidia-kernel and it still produces that error!!!
ONLY way I am able to get a working desktop is to issue this
sh /usr/portage/distfiles/NVIDIA-Linux-x86-1.0-8762-pkg1.run
ie run the NVIDIA-script directly! now since portage uses the nvidia-script and using portage does not work, portage MUST be doing something to break the compiling of the nvidia-module
THIS has been like this now for a good couple of months, the alias was the closest thing to a working solution BUT it doesnt work
I have opened a bug
https://bugs.gentoo.org/show_bug.cgi?id=137000
[b] _________________
Quote: | Removed by Chiitoo |
|
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Fri Jun 16, 2006 6:07 pm Post subject: |
|
|
Naib wrote: | That "Alias" trick did not work for me either
Kernel: 2.6.16-r9
nvidia-kernel (trying) : nvidia-kernel-1.0.8762 (same problem with nvidia-kernel-1.0.8756)
Originally I had:
Kernel 2.6.15-r1 + nvidia-kernel-1.0.8756 working fine!
new kernel comes out so I try that out and emerging the nvidia-kernel causes those missing symbols error
I carry on using working combo
New nvidia-kernel comes out (nvidia-kernel-1.0.8762) trying that against kernel-2.6.15-r1 results in the missinh symbols
so I try to go back to nvidia-kernel-1.0.8756 but that produces the same missing symbols
WTF!!! that was a previously working combination tha tis now broken!!!!
I re-compile my kernel and try to re-emerge nvidia-kernel and it still produces that error!!!
|
Yep, something's terribly wrong with the whole thing. I also didn't wanna accept that reverting the changes didn't make things work again. Strange though, that the alias thing did the trick for me, but I could imagine that portage b0rked these aliases *somehow*...what's even more odd is that hell lot of people are having exactly this issue, but they always fixed it by using a ~nvidia-kernel.
Naib wrote: |
ONLY way I am able to get a working desktop is to issue this
sh /usr/portage/distfiles/NVIDIA-Linux-x86-1.0-8762-pkg1.run
ie run the NVIDIA-script directly! now since portage uses the nvidia-script and using portage does not work, portage MUST be doing something to break the compiling of the nvidia-module
|
This is, again, curious, because I also manually installed several versions of the package. I also noticed that the second symbol problem, remap_page_range, appeared only sporadically...even on subsequent merges!
maybe the best thing to do is like `while emerge nvidia-kernel|grep 'unknown symbol'; do true; done;' |
|
Back to top |
|
|
kiss-o-matic Guru
Joined: 19 Jul 2004 Posts: 423 Location: Tokyo
|
Posted: Tue Jun 20, 2006 1:00 am Post subject: |
|
|
FYI, the manual script is not working for me. I get:
/tmp/selfgz12276/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/os-agp.c:48: error: parse error before '*' token
I've got an AGP Nvidia card. Am I missing something in the kernel?
I'm not really surprised though. I've not had the nvidia driver work on other machine for months. |
|
Back to top |
|
|
AstroTux Tux's lil' helper
Joined: 03 Dec 2005 Posts: 103 Location: /home/M31
|
Posted: Tue Jun 20, 2006 3:29 am Post subject: |
|
|
Hi,
I'm another nVidia and 2.6.16-gentoo-r9 kernel user with probs. I'll let you know if I get it resolved and how. I'm getting the same pci_find_class error with modprobe.
Best regards,
AstroTux. _________________ Registered Linux User #404385
Viva Andromeda! |
|
Back to top |
|
|
Decibels Veteran
Joined: 16 Aug 2002 Posts: 1623 Location: U.S.A.
|
Posted: Fri Jun 23, 2006 6:02 am Post subject: |
|
|
Same problem here almost exactly. Same kernels and going back doesn't help.
Haven't had them run the NVIDIA-Linux script instead of using portage, didn't find this
until too late to do that today. Hopefully maybe tomorrow.
I'm using 2.6.15-gentoo-r1 & nvidia-kernel-1.0.8174-r1 right now and after seeing their
problem and you guys, glad I haven't upgraded those two in awhile. _________________ Support bacteria – they’re the only culture some people have.”
– Steven Wright |
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Mon Jul 03, 2006 9:35 am Post subject: |
|
|
It may seem unrelated, but that alias thing worked for me again...When installing the 2.6.17 kernel, I remerged nvidia-kernel and, how could it be different, he complained about that page_range thing. As I didn't have that problem the last time I merged, I added that alias to modules.d/nvidia, and again, the module registered correctly. It may be some sort of placebo, but otherwise that problem would be totally random... |
|
Back to top |
|
|
zxy Veteran
Joined: 06 Jan 2006 Posts: 1160 Location: in bed in front of the computer
|
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Thu Aug 03, 2006 8:55 pm Post subject: |
|
|
for those who haven't noticed...In the bug opened by Naib, a solution seems to have been found:
Disable ccache while emerging.
Code: | FEATURES="-ccache" emerge nvidia-drivers |
I didn't try, so post some feedback! |
|
Back to top |
|
|
Tilzs n00b
Joined: 22 Mar 2006 Posts: 4
|
Posted: Wed Aug 09, 2006 3:31 pm Post subject: |
|
|
use nvidia-drivers instead of nvidia-kernel & nvidia-glx |
|
Back to top |
|
|
Naib Watchman
Joined: 21 May 2004 Posts: 6053 Location: Removed by Neddy
|
Posted: Mon Aug 28, 2006 1:45 pm Post subject: |
|
|
Tilzs wrote: | use nvidia-drivers instead of nvidia-kernel & nvidia-glx |
That may be teh case now, but the problem still exists whether you use the nvidia-* or nvidia-drivers ebuild
ccache borks it _________________
Quote: | Removed by Chiitoo |
|
|
Back to top |
|
|
tek0 n00b
Joined: 09 Oct 2005 Posts: 43
|
Posted: Mon Aug 28, 2006 1:55 pm Post subject: |
|
|
Naib wrote: | Tilzs wrote: | use nvidia-drivers instead of nvidia-kernel & nvidia-glx |
That may be teh case now, but the problem still exists whether you use the nvidia-* or nvidia-drivers ebuild
ccache borks it |
true. I'll put that in the original post to avoid confusion. |
|
Back to top |
|
|
rek2 Guru
Joined: 05 Jan 2003 Posts: 477 Location: Boston USA/Barcelona Spain
|
Posted: Mon Aug 28, 2006 1:59 pm Post subject: |
|
|
I upgraded to ~x86 nvidia driver and works for me..
I vote for nvidia to free or work behind xorg instaed of xorg behind nvidia, is a pain what propietary software is doing, having all this people always waiting for them...
and still somepeople belives that propietary is ethical... they really dont care a crap about FOSS if they did they will had release a fix to the font issue and xorg 7.1 long time a go... rather they have all using xorg 7.1 downgrade to 7.0 sometimes I really think that some people is right that WE SHOULD not
relay so much on propietary software... we always loose.
_________________ http://www.dailyradical.org
http://www.binaryfreedom.info
use jabber!!! sing on now, register an account:
http://jabber.binaryfreedom.info |
|
Back to top |
|
|
|