There seems to be a X.Org 2D rendering related regression with GeForce 8800 GTS introduced in nVidia driver version 295.49 and onwards (latest working version: 295.40).
When using drivers version 295.49 and onwards, 2D rendering with X.Org (Fedora 16, X.Org 1.11.4) is *extremely* slow. That is, it takes several seconds for every window repaint (see http://nv.s2.crt1.net/movies/nvidia-driver-2D-bug
for a video screenshot of the problem), or even minutes (e.g.: cheese, ending up with a blank screen or a single still image at best, no video displayed and GUI totally unresponsive requiring the application to be killed).
During repaint, all input events seems to be lost by X.Org, e.g.: key presses are lost on terminals; if [Alt] key is released during a repaint consecutive to a task switch ([Alt]+[Tab]), [Alt] release event is lost and the task switcher is kept on screen, etc. With those drivers, X.Org is totally unusable, turning a quad-core 2.4 GHz machine into a i486 in terms of GUI responsiveness. The only workaround seems to be downgrading to 295.40.
This issue does *not* appear on machines using identical software configuration but equipped with GeForce GT 220, Quadro 2000 or Quadro FX 3800.
Only the GeForce 8800 GTS is affected by this bug.
Working properly: 290.10, 295.33, 295.40
Broken: 295.49 -> 295.59 incl.
nVidia bug reports (for both working version 295.40 and broken version 295.59) related to this bug are available here: http://nv.s2.crt1.net/bug_reports/
Considering the release highlights for version 295.49
and the symptoms of this bug, I guess it has been introduced while trying to fix this one:
Fixed a problem where starting, stopping, and moving OpenGL application windows was very slow on Quadro FX 4600, Quadro FX 5600, GeForce 8800 GTX, GeForce 8800 GTS, and GeForce 8800 Ultra.