64Studio and the infamous nVidia issue

What other apps and distros do you use to round out your studio?

Moderators: MattKingUSA, khz

Post Reply
User avatar
SuperPenguin
Established Member
Posts: 20
Joined: Wed Oct 29, 2008 8:35 pm
Location: Honolulu, HI
Contact:

64Studio and the infamous nVidia issue

Post by SuperPenguin »

Hey everyone,

I've been fighting with 64Studio 2.1 to play nice with my vid card which is a nvidia 8600gts. The installer jives fine, and I followed some specifics other on their forum for installing the correct nvidia drivers & dependencies. After a successful install and you reboot, you login to single user mode, apt-update then apt-install the nvidia drivers. After the drivers and their dependencies are installed, while in single user mode, open up nano and change the driver in xorg.conf from "nv" to "nvidia". Reboot. That's supposedly the best way to do it.

I do that, and I get through the splash screen just fine. But when X is being called on to show the gdm login, I just get a few cursor blinks and then the screen goes black. The monitor isn't jumping out of range, checked that. Also the highest resolution I'm allowing is for 1024 for now, even though i can go much higher.

Any idea what's going on?
open sourced & creative commons licensed album in the works!
follow the progress at http://dissentiate.com
studio32

Re: 64Studio and the infamous nVidia issue

Post by studio32 »

maybe this will help you:
http://forums.debian.net/viewtopic.php?t=10812


and some -rt notes:
mzilikazi wrote:I decided to write the latest RT kernel howto a little differently since it doesn't exactly follow the same procedure as the last one and I thought it would be good to have both howto's in place. If you want 2.6.26.5-rt8 read on. All of this is done as user!

Code: Select all

mkdir KERNEL
cd KERNEL
wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.5.tar.bz2
wget http://jenggo.net/donlod/bootsplash-3.1.6-2.6.26.diff.tar.gz
wget http://www.kernel.org/pub/linux/kernel/projects/rt/patch-2.6.26.5-rt8.gz
unp linux-2.6.26.5.tar.bz2
unp bootsplash-3.1.6-2.6.26.diff.tar.gz
mv linux-2.6.26.5 linux-2.6.26.5-rt8
cd linux-2.6.26.5-rt8
patch -p1 <../bootsplash-3.1.6-2.6.26.diff
zcat ../patch-2.6.26.5-rt8.gz |patch -p1
Note the Makefile in your kernel source. It will automatically update the EXTRAVERSION string for you. In this case:

Code: Select all

VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 26
EXTRAVERSION = .5-rt8
NAME = Rotary Wombat
This will be appended to your kernel name.

Code: Select all

make menuconfig
OR if you wish to start with the same .config of your current kernel:

Code: Select all

make oldconfig
Then run

Code: Select all

make menuconfig
Enable Real-time preemption.

Code: Select all

Processor type and features> Preemption Mode (Complete Preemption (Real-Time))
Set kernel timer frequency to 1000 HZ

Code: Select all

Processor type and features>Timer frequency (1000 HZ)
Build a kernel the Debian way:

Code: Select all

make-kpkg clean
time fakeroot make-kpkg --initrd -rev mz1 kernel_image kernel_headers
Your new kernel & headers now live in ../KERNEL Use dpkg -i to install.

Code: Select all

$ dpkg -i ../linux-headers-*.deb ../linux-image-*.deb
*TIPS*
Dual core CPU?
Use paralell make processes:

Code: Select all

export CONCURRENCY_LEVEL=2

Skip the patches.

You can just skip the realtime patch and/or the bootsplash patch(es) all together for a basic kernel build. No need to apply either patch.
And some Nvidia notes (maybe you can discuss them on the 64studio mailinglist/ forum and tell us the outcome...

Nvidia graphics driver:
You might want to disable Paravirtualization in make menuconfig. The Nvidia driver does not build against kernels with this enabled.

You can build the nvidia-kernel driver (or any other drivers like ndiswrapper or rfswitch) before you even boot into your new kernel if you prefer but it must be done as root. You must be in the same dir as your kernel source.

Code: Select all

apt-get update;apt-get install nvidia-kernel-source
Nvidia 173.14.09-5 doesn't play nice with the latest RT patch. If you try to build nvidia it will fail something like this:

Code: Select all

/usr/src/modules/nvidia-kernel/nv.c:1887: error: implicit declaration of function ‘__SEMAPHORE_INITIALIZER’
/usr/src/modules/nvidia-kernel/nv.c:1887: error: invalid initializer
/usr/src/modules/nvidia-kernel/nv.c: In function ‘nv_lock_init_locks’:
/usr/src/modules/nvidia-kernel/nv.c:3783: error: invalid initializer
/usr/src/modules/nvidia-kernel/nv.c:3784: error: invalid initializer
make[4]: *** [/usr/src/modules/nvidia-kernel/nv.o] Error 1
make[3]: *** [_module_/usr/src/modules/nvidia-kernel] Error 2
make[3]: Leaving directory `/home/glenn/KERNEL/linux-2.6.26.5-rt8'
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make[2]: *** [module] Error 1
make[2]: Leaving directory `/usr/src/modules/nvidia-kernel'
make[1]: *** [build-stamp] Error 2
make[1]: Leaving directory `/usr/src/modules/nvidia-kernel'
make: *** [kdist_image] Error 2
BUILD FAILED!
See /var/cache/modass/nvidia-kernel-source.buildlog.2.6.26.5-rt8.1221183345 for details.
Build failed. Press Return to continue...
Fortunately, it's not too difficult to work around. :)

Code: Select all

apt-get update;apt-get install nvidia-kernel-source
sed -i '/__SEMAPHORE_INITIALIZER/ s/__SEMAPHORE_INITIALIZER/__COMPAT_SEMAPHORE_INITIALIZER/' /usr/src/modules/nvidia-kernel/nv-linux.h
sed -i '/struct semaphore/ s/struct semaphore/struct compat_semaphore/' /usr/src/modules/nvidia-kernel/nv-linux.h
If you run your usual m-a line for nvidia it will unpack the source again and your edits to nv-linux.h will be wasted. Lucky for us m-a has a workaround for this too in the form of the -O switch.

Code: Select all

man m-a
/snip/

Code: Select all

-O

       --not-unpack
              Never unpack the source tarball. Usefull after manual manipulation of module source.
Just put that switch right in front of the module you wish to build like so:

Code: Select all

m-a -t -k linux-2.6.26.5-rt8/ -l linux-2.6.26-5-rt8 a-b -O nvidia
User avatar
SuperPenguin
Established Member
Posts: 20
Joined: Wed Oct 29, 2008 8:35 pm
Location: Honolulu, HI
Contact:

Re: 64Studio and the infamous nVidia issue

Post by SuperPenguin »

Wow! Thanks for all that, I might have to start digging in on that tonight if I keep having issues. Man, I thought I was too old to be given homework... lol

Actually for those interested, I got a response over at the 64studio forum that I thought I would share. Haven't tried it yet since I'm at work right now, but it looks like it's a good way to get things going in 64Studio 2.1.
Download the nvidia driver from the download site.
Log out of your desktop & log into a console as root.
Change directory to where your nvidia driver downloaded.
cp /etc/X11/xorg.conf /etc/X11/xorg.conf2
telinit 3
/etc/init.d/gdm stop
export CC=gcc-4.1
sh NVIDIA-Linux-x86-173.14.12-pkg1.run (use your version).
nano /etc/X11/xorg.conf
change "nv" to "nvidia"
That was courtesy of the user skullnotions, and the ongoing post for that is at http://www.64studio.com/node/857. My handle over there is SEO Honolulu if you want to follow up with me or just monitor my progress. But I got no issues with double-threading progress over there and here as well.. I would imagine if I have success it would benefit many others to know how to get there too.
open sourced & creative commons licensed album in the works!
follow the progress at http://dissentiate.com
User avatar
SuperPenguin
Established Member
Posts: 20
Joined: Wed Oct 29, 2008 8:35 pm
Location: Honolulu, HI
Contact:

Re: 64Studio and the infamous nVidia issue

Post by SuperPenguin »

WOOHOO!!

Ok, I can confirm that the steps I posted do indeed work! Awesome knowledge to have.. I think I need to buy that guy over at the 64studios forum a big ol' beer for his help. If it helps anyone else, here's my system specs;

64Studio 2.1 (fresh install)
64 bit nVidia display drivers version 180.22
AMD Athlon 64 X2 5400 Brisbane 2.8GHz Socket AM2
GIGABYTE GA-M57SLI-S4 AM2 NVIDIA nForce 570 SLI MCP ATX AMD Motherboard
MSI NX8600GT Twin Turbo GeForce 8600 GT 256MB 128-bit GDDR3 PCI Express x16 SLI
G-Skill 4GB (4 x 1GB) 240-Pin DDR2 SDRAM DDR2 667 (PC2 5300) Dual Channel
Seagate Barracuda 320GB 7200 RPM SATA 3.0Gb/s Hard Drive
LG 18X DVD±R Super-Multi DVD Burner With 12X DVD-RAM Write
M-Audio Audiophile 24/96 PCI
SCEPTRE X9WG-NagaV Black 19" 8ms Widescreen HD Ready LCD Monitor
Logitech G5 2-Tone 6 Buttons 1 x Wheel USB Wired Laser Mouse
Kingston Silent Touch Keyboard

Now it's time to make some music!!!
open sourced & creative commons licensed album in the works!
follow the progress at http://dissentiate.com
Post Reply