Click to See Complete Forum and Search --> : nVidia driver 5328 released


bwkaz
12-22-2003, 04:20 PM
What's new:

Supports latest GeForce FX and Quadro FX GPUs (read: the FX5700's)
Added support for UBB and FSAA Stereo.
Improved GLXPixamp support.
Added support for Red Hat Enterprise Linux 3.0.
Added support for GLX_SGI_swap_control.
Reduced CPU usage when OpenGL applications are syncing to vblank. The last one is the one that a couple of people at nvnews had been complaining about for the longest time (at least, as of the point in time where I stopped visiting there because of not enough hours in the day...). Basically, the problem is that the GL drivers do a busy-wait when you tell them to sync to vblank, instead of sleeping. They do the busy-wait because the kernel's scheduling latency is somewhere around 10ms, which is longer than the vblank period that they're watching for.

I don't know how they got around that, but it looks like they may have. Cool!

Get the drivers from http://www.nvidia.com/object/linux_display_ia32_1.0-5328

One word of caution though -- when I installed it (with the minion.de patch; unfortunately nVidia still doesn't support 2.6.0...), one of the __nvsym functions called os_read_pci_dword with a handle of NULL. This caused some nice problems inside the kernel (read: a kernel NULL pointer dereference, which caused an oops, and X crashed without deallocating its virtual console).

I don't know if this happens on 2.6.x only, or on 2.4.x kernels also. It seems like it would happen on 2.4.x, because the __nvsym functions aren't touched by the minion.de patch (it can't; they're precompiled). However, I'm not sure as I don't know what the logic is before the os_read_pci_dword call.

The fix that I'm using is to edit os-interface.c, find os_read_pci_dword, and add a check in there that looks like:

if(!handle) return 0; I don't know if this is the correct behavior or not (I can't see what the __nvsym function expects to get back), but X does start for me at least.

There is always the chance of this fix damaging hardware, though. It didn't for me, but yeah. Anyway, I'll see what I can find at nvnews.net about this.

carbon-12
12-22-2003, 04:35 PM
My next GPU is defiantly going to be a nVidia. ATI still dosent even have drivers for the Radeon 7500. :mad:

hard candy
12-22-2003, 06:18 PM
Thanks BW.

My next GPU is defiantly going to be a nVidia. ATI still dosent even have drivers for the Radeon 7500.
Look in How I Did It- 3D opengl for radeon.

bwkaz
12-23-2003, 11:59 AM
Originally posted by bwkaz
I don't know if this happens on 2.6.x only, or on 2.4.x kernels also. It does happen on 2.4.23 vanilla as well.

It seems that it's somehow related to Via chipsets, too, which makes absolutely no sense. But whatever.

Nobody from nVidia has said anything at nvnews either -- I'll keep watching and post here if they do, though. It wouldn't surprise me if they released 1.0-5329 or 1.0-5330 in a couple days.

rocketpcguy
12-23-2003, 12:55 PM
i think ati offers the best speed and performance than nivida for the same money. but i don't know why, i like nvidia better.

bwkaz
12-23-2003, 05:53 PM
Originally posted by rocketpcguy
i think ati offers the best speed and performance than nivida for the same money. They do, in Windows. ;)

Their Linux drivers seem to be quite difficult to install correctly, for some reason. No idea why, though -- and I've never tried to install them myself either.

As for my problem, it's possible to work around using one piece of the patch at www.minion.de.

Instructions are here:

http://www.justlinux.com/forum/showthread.php?s=&postid=674789#post674789