Another big surprise rolled out from the Debian Unstable repository when today I updated my kernel from 2.6.25-1 to 2.6.25-2 – the maintainers have enabled Xen in the non-Xen kernel (linux-image-2.6.25-2-686). The result from this is that Nvidia drivers don’t compile throwing error about Xen enabled kernel.
The solution (if you don’t want to recompile your own kernel) :
As usual backup before executing any of these :)
- cd /lib/modules/2.6.25-2-686 (or wherever are your modules)
- grep CONFIG_XEN . -Rl | xargs -i sed -i -e ‘s/CONFIG_XEN/CONFIG_LUPO/g’ {}
- export IGNORE_XEN_PRESENCE=1
- sh NVIDIA-Linux-x86-173.08-pkg1.run (or you can use patched 169.12 – http://www.nvnews.net/vbulletin/showthread.php?t=110088 )
Source: linux-image-2.6.25-2-686: nVidia driver fails to compile due to active Xen support
Comments
Comment by David Martínez on 2008-05-25 22:19:01 +0300
Worked for me with AMD-K7, 686 kernel and Beta driver. Many thanks !!
Comment by Jul on 2008-05-27 14:28:26 +0300
Thank you, Peter You are my frickin’ hero :) Although it’s really a dirty hack at least it does what it should do :)
Oh shall I say worked on Debian Sid with 2.6.25-2-686
Comment by Ariel on 2008-05-28 02:41:25 +0300
You don’t need to do this anymore, as of update 169.12-2 released May 12, 2008.
Comment by Peter on 2008-05-28 23:09:11 +0300
Not installable at this time. Also I prefer latest beta
Comment by Gary on 2008-05-29 01:37:12 +0300
Worked for me using linux-image-2.6.25-2-686-bigmem on a core duo. Card is a 9600GT and I used NVIDIA-Linux-x86-173.08-pkg1.run
Thanks for the info.
Comment by sgfxi on 2008-06-03 04:32:45 +0300
I implemented this in our debian sid/testing nvidia/fglrx installer script, sgfxi, for the lazy among you.
Must be run from /usr/local/bin
cd /usr/local/bin;wget -Nc http://techpatterns.com/sgfxi; chmod +x sgfxi
sgfxi installs all current nvidia drivers, patches them, detects your card version to install correct driver version, or lets you override it to install some other driver, applies patches if needed, see: sgfxi -h for currently supported drivers.
It also updates itself automatically every time you run it after you install it.
sgfxi home page: http://techpatterns.com/forums/about933.html
To install latest current, just do: sgfxi -c
Currently the patch is in testing mode, that’s what the -T is for, normally it would all be automatic.
This is the graphics installer for sidux/smxi
Comment by sgfxi on 2008-06-03 04:33:23 +0300
oh, and it undoes the patch right after the nvidia driver install is done, so your /lib/modules stuff is set back to normal after the nvidia driver is installed.
Comment by sgfxi on 2008-06-03 04:34:56 +0300
ah, sorry, needs: sgfxi -T -c
to install current latest driver, with composite.
The -T will probably be not required in a few days after I do some more testing on this.
Comment by Cun Zhang on 2008-06-03 11:54:18 +0300
Thank you for your article!
I have install nvidia driver.
I use Nvidia Geforce MX 4000, install NVIDIA-Linux-x86-96.43.05-pkg1.run, patch a diff file from nvnews.com
and set IGNORE_XEN_PRESENCE=1. Then it is installed successful.
Comment by sgfxi on 2008-06-06 20:41:26 +0300
Everything is debugged now and working fine, no further need for -T option in sgfxi for this issue, just start it with regular arguments now. Thanks for this fix, the method was nicely done, I hadn’t seen that use of grep -Rl before, very useful.
sgfxi is currently now supporting all current kernels and drivers again, including ati stuff, which won’t be of interest to people in this thread.
Comment by Peter on 2008-06-06 21:17:30 +0300
@sgfxi
Thanks mate. Why don’t you start a thread on nvnews.net to popularize a bit.
I will comment there too.
Comment by promolic1 on 2008-06-14 10:29:04 +0300
Hi!!! Where can I find the diff file that you are talking Cun Zhang???
I have the same problem, and a MX 4000
Sorry if my English is bad
Comment by Peter on 2008-06-14 18:45:38 +0300
@promolic1
I presume it is the patch from this page http://www.nvnews.net/vbulletin/showthread.php?t=110088
@Cun Zhang nvnews.net mate :)
Comment by Miguelo on 2008-07-14 02:00:21 +0300
Thank you!!. Worked for me using debian lenny (testing), linux image 2.6.25-2-686, nvidia 8600GT with NVIDIA-Linux-x86-177.13-pkg1.run, pentium D CPU and intel d945 motherboard.
Comment by dan on 2008-07-14 13:52:08 +0300
thanks sgfxi,
script works great!
Comment by Kiyo on 2008-07-17 05:12:48 +0300
Ahh sweet accelerated graphics, How I briefly missed you. Thanks a lot:
Lenny 2.6.25-2-686, nvidia 8600GT, Dell Inspiron 1720
Comment by ultr on 2008-07-27 01:26:14 +0300
This patch for 173.14.05 works great for me: http://debian.linux.pl/viewtopic.php?p=62317#62317
It’s based on a similar idea to your solution, but does not require to rubbish your system.
You just have to generate a patched version of nVidia installer, and then run it as usual :)
All bug reports are very welcome – please replay in the above topic (in English or Polish).
Comment by Peter on 2008-07-27 20:04:57 +0300
Well “require to rubbish your system” are strong words after all
apt-get install –reinstall linux-headers-2.6.25-2-686 fixes reverts back
and since I have not reviewed your patch I’m sticking with this fix.
However I suggest posting this patch in nvnews.net and hope it will be merged.
Comment by warcry on 2008-09-11 16:25:25 +0300
This patch is working just fine
cool mate
u did it
:)
Comment by luovel on 2008-09-17 06:44:58 +0300
Bad luck! I still failed after I tried both methods including the diff patch http://www.nvnews.net/vbulletin/showthread.php?t=110088
And every time the installation failed messages are the same as before.
so, what should i do now? Degrade the kernenl to 2.6.24?
T2080, nVidia 8400M G, etch + 2.6.25-2.686, nv driver 169.12 and 173.14.12
Comment by Peter on 2008-09-17 11:24:08 +0300
I have just used this technique with kernel 2.6.26-1-686-bigmem and nvidia driver NVIDIA-Linux-x86-177.68-pkg1.run and did not have any problems.
Please try again and post more information about the error
Thanks