Kernel source not matching kernel update
Hi everyone. I have now installed the latest kernel update for SuSE 8.1. The two packages are: k_deflt-2.4.21-203.i586.rpm kernel-source-2.4.21-201.i586.rpm I have run # make cloneconfig && make dep in /usr/src/linux. I get the following error when doing make install in the nv source directory: # make install Unable to determine kernel version. make: *** [select_makefile] Error 1 Can anyone help me with this please as I cannot use X11 now? Kind Regards - Keith Roberts
/ 2004-04-18 08:35:05 +0000 \ Keith Roberts:
Hi everyone.
I have now installed the latest kernel update for SuSE 8.1.
The two packages are:
k_deflt-2.4.21-203.i586.rpm
kernel-source-2.4.21-201.i586.rpm
I have run
# make cloneconfig && make dep
in /usr/src/linux.
I get the following error when doing make install in the nv source directory:
# make install Unable to determine kernel version. make: *** [select_makefile] Error 1
Can anyone help me with this please as I cannot use X11 now?
you could use the XFree nv driver for now, no? This is a guess only, and it may or may not work, but probably the symlink /lib/modules/`uname -r`/build , which is most likely /lib/modules/2.4.21-203-default/build points to /usr/src/linux-2.4.21-203-include or something. you could try to force a symlink to the right kernel headers/kernel source here: ln -sf /usr/src/linux /lib/modules/`uname -r`/build and try again. assuming that -201 and -203 are basically only different builds and not something actually changed in the kernel sources, this should work well. Lars Ellenberg
On Sun, 18 Apr 2004, Lars Ellenberg wrote:
To: suse-security@suse.com From: Lars Ellenberg <l.g.e@web.de> Subject: Re: [suse-security] Kernel source not matching kernel update
This is a guess only, and it may or may not work, but probably the symlink /lib/modules/`uname -r`/build , which is most likely /lib/modules/2.4.21-203-default/build points to /usr/src/linux-2.4.21-203-include or something. you could try to force a symlink to the right kernel headers/kernel source here: ln -sf /usr/src/linux /lib/modules/`uname -r`/build and try again.
assuming that -201 and -203 are basically only different builds and not something actually changed in the kernel sources, this should work well.
Thanks Lars. Got it working now! The problem was make did NOT like different version names in the source code and the compiled version. Only doing it's job properly anyway! In /usr/src/ I copied kernel source code linux-2.4.21-201 to -203. Copied kernel include code linux-2.4.21-201-include to -203. delete the old symlinks to -201 patch. made 2 new symlinks to the -203 files. linux -> linux-2.4.21-203 linux-include -> linux-2.4.21-203-include Then continued as normal. Then in /usr/src/linux I did: make cloneconfig && make dep Then I changed to the NVIDIA installer directory, and compiled the nvidia driver using the nvidia-installer - which worked ok. Then cd'ed to NVIDIA-Linux-x86-1.0-5336/usr/src/nv and did: make install depmod -a And that was it compiled and installed ok. FYI, if you use the nvidia-installer WITHOUT running the last 2 commands, the GLX module will not be installed. This will leave you with a partly completed unstable installation, and cause weird control characters to be written to the VDU, and hang your system. I don't quite understand why the nvidia installer does not finish the job properly. Anyway, thanks for your help Lars. Kind Regards - Keith Roberts
Quoting Keith Roberts <lists@kar.eclipse.co.uk>:
*snip*
Then cd'ed to NVIDIA-Linux-x86-1.0-5336/usr/src/nv and did:
make install depmod -a
And that was it compiled and installed ok.
FYI, if you use the nvidia-installer WITHOUT running the last 2 commands, the GLX module will not be installed. This will leave you with a partly completed unstable installation, and cause weird control characters to be written to the VDU, and hang your system.
I don't quite understand why the nvidia installer does not finish the job properly.
That is *VERY* strange. I've used the NVIDIA installer on a number of systems, even x86_64, and have never witnessed this behavior. For starters, the GLX driver is *NOT* a kernel driver. depmod -a will not affect it. Something else is going on in your system.
On Sun, 18 Apr 2004 suse@rio.vg wrote:
That is *VERY* strange. I've used the NVIDIA installer on a number of systems, even x86_64, and have never witnessed this behavior. For starters, the GLX driver is *NOT* a kernel driver. depmod -a will not affect it. Something else is going on in your system.
I thought that GLX was a loadable X11 module, that had to be installed in the right place so X11 could then load it with the rest of the nvidia driver. Kind Regards - Keith Roberts PS. did you have any problems with the latest kernel update not matching the kernel source code patch, and the nvidia driver compiling?
On Sun, 18 Apr 2004, Keith Roberts wrote:
On Sun, 18 Apr 2004 suse@rio.vg wrote:
That is *VERY* strange. I've used the NVIDIA installer on a number of systems, even x86_64, and have never witnessed this behavior. For starters, the GLX driver is *NOT* a kernel driver. depmod -a will not affect it. Something else is going on in your system.
I thought that GLX was a loadable X11 module, that had to be installed in the right place so X11 could then load it with the rest of the nvidia driver.
Yes. It's an X11 module, not a kernel module. /var/log/XFree86.0.log will tell you whether it's being loaded.
PS. did you have any problems with the latest kernel update not matching the kernel source code patch, and the nvidia driver compiling?
I had that issue with the only SuSE 8.1 machine with an nVidia card I've still got running. No problem with SuSE 8.2 or SuSE 9.0. The issue not being the difference in the version number but that the build symlink was going the wrong place. I did not issue make install after upgrading anywhere, I've confirmed that there's no glx problem on SuSE 8.2 or SuSE 9.0, but won't be able to get my hands on the SuSE 8.1 box until tomorrow. Bjørn -- Bjørn Tore Sund Phone: (+47) 555-84894 Stupidity is like a System administrator Fax: (+47) 555-89672 fractal; universal and Math. Department Mobile: (+47) 918 68075 infinitely repetitive. University of Bergen VIP: 81724 Support: system@mi.uib.no Contact: teknisk@mi.uib.no Direct: bjornts@mi.uib.no
Can I ask about the symlink? Where is it and where should it point? I cannot get the accelerated 3D feature of nvidia to work. The installer claims it is successful, but 3Ddiag says the driver installation failed. The 'device' section of XF86Config shows the driver as "nvidia". XFree86.0.log says the glx module failed to load, but the nvidia driver is loaded. Is there is a symlink that should point to glx but doesn't? Or perhaps I have more serious problems. This is for SuSE 8.2 with kernel 2.4.20-109. Any suggestion would be greatly appreciated. -Ed C. in Oregon On Sunday 18 April 2004 09:06, Bjorn Tore Sund wrote:
On Sun, 18 Apr 2004, Keith Roberts wrote: ....
I had that issue with the only SuSE 8.1 machine with an nVidia card I've still got running. No problem with SuSE 8.2 or SuSE 9.0. The issue not being the difference in the version number but that the build symlink was going the wrong place. I did not issue make install after upgrading anywhere, I've confirmed that there's no glx problem on SuSE 8.2 or SuSE 9.0, but won't be able to get my hands on the SuSE 8.1 box until tomorrow.
Bjørn -- Bjørn Tore Sund Phone: (+47) 555-84894 Stupidity is like a System administrator Fax: (+47) 555-89672 fractal; universal and Math. Department Mobile: (+47) 918 68075 infinitely repetitive. University of Bergen VIP: 81724 Support: system@mi.uib.no Contact: teknisk@mi.uib.no Direct: bjornts@mi.uib.no
On Sun, 18 Apr 2004, Ed Cleary wrote:
Can I ask about the symlink? Where is it and where should it point?
That was in a message Lars Ellenberg posted in this thread yesterday: ln -sf /usr/src/linux /lib/modules/`uname -r`/build
I cannot get the accelerated 3D feature of nvidia to work. The installer claims it is successful, but 3Ddiag says the driver installation failed. The 'device' section of XF86Config shows the driver as "nvidia". XFree86.0.log says the glx module failed to load, but the nvidia driver is loaded. Is there is a symlink that should point to glx but doesn't? Or perhaps I have more serious problems. This is for SuSE 8.2 with kernel 2.4.20-109.
Not an issue on SuSE 8.2, as I said. The installer worked straight out of the box for me on four machines running 8.2. The symlink was broken on SuSE 8.1 and prevented the driver from building altogether thgere. And this is getting increasingly off-topic here, so I suggest you take your problem to suse-linux-e and post your actual error messages there (your rendition/interpretation of them are less useful).
Any suggestion would be greatly appreciated.
Stop top-quoting. Bjørn -- Bjørn Tore Sund Phone: (+47) 555-84894 Stupidity is like a System administrator Fax: (+47) 555-89672 fractal; universal and Math. Department Mobile: (+47) 918 68075 infinitely repetitive. University of Bergen VIP: 81724 Support: system@mi.uib.no Contact: teknisk@mi.uib.no Direct: bjornts@mi.uib.no
/ 2004-04-19 10:43:17 +0200 \ Bjorn Tore Sund:
On Sun, 18 Apr 2004, Ed Cleary wrote:
Can I ask about the symlink? Where is it and where should it point?
That was in a message Lars Ellenberg posted in this thread yesterday:
ln -sf /usr/src/linux /lib/modules/`uname -r`/build
I cannot get the accelerated 3D feature of nvidia to work. The installer claims it is successful, but 3Ddiag says the driver installation failed. The 'device' section of XF86Config shows the driver as "nvidia". XFree86.0.log says the glx module failed to load, but the nvidia driver is loaded. Is there is a symlink that should point to glx but doesn't? Or perhaps I have more serious problems. This is for SuSE 8.2 with kernel 2.4.20-109.
if the nvidia module is loaded, this is not a problem of the kernel or kernel source, but of misconfiguration of your *X* libraries. and security related only insofar that nvidia is a closed source kernel driver, and you should not use it unless you trust them to not only be good at 3D graphics, but also at designing and implementing secure kernel level code :)
Quoting Keith Roberts <lists@kar.eclipse.co.uk>:
I thought that GLX was a loadable X11 module, that had to be installed in the right place so X11 could then load it with the rest of the nvidia driver.
Yes, it is. However, your instructions mentioned 'depmod -a', which would have no effect on an X11 module. Moreoever, the GLX module, as I understand it, is only for 3d rendering. X should still load properly without it.
PS. did you have any problems with the latest kernel update not matching the kernel source code patch, and the nvidia driver compiling?
I have not, but I am using SuSE 9.0, which had the two versions matching. Also, I don't run 'make cloneconfig' and whatnot when upgrading the kernel. As I understand it, NVIDIA's kernel installer should be able to compile without kernel sources, but I could be wrong about that. I've never looked too closely at the Nvidia installer because it always worked seemlessly for me :-)
On Sunday 18 April 2004 18:31, suse@rio.vg wrote:
I have not, but I am using SuSE 9.0, which had the two versions matching. Also, I don't run 'make cloneconfig' and whatnot when upgrading the kernel. As I understand it, NVIDIA's kernel installer should be able to compile without kernel sources, but I could be wrong about that.
The official suse kernels ship with a precompiled kernel 'glue', so all the installer has to do is link it with the proprietary stuff. It doesn't compile anything, and as you say doesn't require the kernel source. If you use a modified kernel though, you'll need a prepared source, because then you'll need to compile
On Sun, 18 Apr 2004, Anders Johansson wrote:
To: suse-security@suse.com From: Anders Johansson <andjoh@rydsbo.net> Subject: Re: [suse-security] Kernel source not matching kernel update
On Sunday 18 April 2004 18:31, suse@rio.vg wrote:
I have not, but I am using SuSE 9.0, which had the two versions matching. Also, I don't run 'make cloneconfig' and whatnot when upgrading the kernel. As I understand it, NVIDIA's kernel installer should be able to compile without kernel sources, but I could be wrong about that.
The official suse kernels ship with a precompiled kernel 'glue', so all the installer has to do is link it with the proprietary stuff. It doesn't compile anything, and as you say doesn't require the kernel source.
Thanks for your reply Anders. QUOTE FROM THE NVIDIA README ( ftp://download.nvidia.com/XFree86/Linux-x86/1.0-5336/README ) --- snip --- KERNEL INTERFACES The NVIDIA kernel module has a kernel interface layer which must be compiled specifically for the configuration and version of the kernel you are running. NVIDIA distributes the source code to this kernel interface layer, as well as a precompiled version for many of the kernels distributed by some popular distributions. When the installer is run, it will determine if it has a precompiled kernel interface for the kernel you are running. If it does not have one, it will check if there is one on the NVIDIA ftp site (assuming you have an internet connection), and download it. If a precompiled kernel interface is found that matches your kernel, then that will be linked[1] against the binary portion of the NVIDIA kernel module. The result of this operation will be a kernel module appropriate for your kernel. If no matching precompiled kernel interface is found, then the installer will compile the kernel interface for you. However, first it will check that you have the correct kernel headers installed on your system. If the installer must compile the kernel interface, then you must install the kernel-sources package for your kernel. --- snip --- UNQUOTE When I use the nvidia-installer it always compiles the nvidia kernel-driver interface for me, as no other options are found, even though I use the standard SuSE 8.1 k_deflt kernel. Kind Regards - Keith Roberts
On Sunday 18 April 2004 21:19, Keith Roberts wrote:
When I use the nvidia-installer it always compiles the nvidia kernel-driver interface for me, as no other options are found, even though I use the standard SuSE 8.1 k_deflt kernel.
Right, according to the README, for suse versions 8.1 and below, they are supposed to provide RPMs. And there is one for the 2.4.19 kernel at ftp://download.nvidia.com/XFree86/Linux-x86/1.0-5336/ although there doesn't seem to be one for the new 2.4.21 kernel but the advise seems a bit confused, since they seem to say both to install the rpm *and* run the installer, which seems a bit redundant. Anyways, note that the README suggests that the nvidia installer isn't intended to work with 8.1, which is as you discovered yourself <quote> III. SuSE Linux 8.1 United Linux 1.0 (UL1) SuSE Linux Enterprise Server 8 (SLES8) ------------------------------------------- 1) Download the according 'NVIDIA_GLX' and 'NVIDIA_kernel' RPMs for 1.0-5336 from nvidia ftp server and install these with the following commands: rpm --justdb -Uhv NVIDIA_kernel*.rpm rpm -Uhv NVIDIA_GLX*.rpm Use "ul1" packages for UL1/SLES8. 2) Kernel sources must be installed and configured. Usually this means installing the 'kernel-source' package with YaST2, update it - if not already done - via YaST2 Online Update (YOU) and configure it then with the following commands: cd /usr/src/linux make cloneconfig && make dep 3) Download nvidia installer for 1.0-5336 and extract it with the following command: sh NVIDIA-Linux-x86-1.0-5336-pkg1.run --extract-only 4) Compile and install the nvidia kernel module with the following commands: cd NVIDIA-Linux-x86-1.0-5336-pkg1/usr/src/nv make install depmod -a 5) Enable 3D support with SaX2. </quote>
participants (6)
-
Anders Johansson
-
Bjorn Tore Sund
-
Ed Cleary
-
Keith Roberts
-
Lars Ellenberg
-
suse@rio.vg