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.
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.