# kerneloops, nvidia, nv, and nouveau

## depontius

I recently installed kerneloops on all machines I administer, and I've been having some problems with one of my home machines.  Unfortunately that machine has an nVidia card, and is running the "nvidia" driver.  Therefore the oops'es I'm sending in are tainted, and I suspect that they're getting thrown into the bit-bucket because of that.  I don't know whether the stability problems on that system have any relation to the video driver, or not.

I really only run 3D software on one machine, and that one has been quite stable.  On one machine I know I have video problems, though they don't appear to cause Oops'es.  I would just as soon run OSS drivers on all machines except the one that needs (games!) 3D, but I do need top-notch 2D performance.

That leaves me with nv vs nouveau.  I'm under the impression that nv performance is barely better than a raw framebuffer, and that nouveau is better, but highly experimental.  Does someone have a better perspective on this to share?

----------

## i92guboj

nv is very poor.

nvidia always worked ok for me. It's fast and stable, and it supports the latest hardware.

nouveau is very promissing, but not quite useable. And it has very limited support for 3d. It's all in the home page:

http://nouveau.freedesktop.org/wiki/

 *Quote:*   

> 
> 
> Current Status
> 
> 2D-support is in fairly good shape with EXA acceleration, Xv and Randr12 (think of dual-head, rotations, etc.). Randr12 should work for all cards up to, but not including, Geforce 8000 series. It is important to test Randr12 now, since it will become the default. Any 3D support is still limited for extremely lucky developers. Also, VT switching while X is running is considered lucky. We keep a status matrix and a TODO list.
> ...

 

In which regards nvidia, the only viable solution for the final users for 3d (and even for 2d, I would say) is the propietary nvidia driver.

----------

## depontius

nvidia isn't working well for me.  From /var/log/Xorg.0.log:

```
(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(EE) NVIDIA(0): Error recovery failed.

(EE) NVIDIA(0):  *** Aborting ***

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(II) NVIDIA(0): Initialized AGP GART.

(WW) NVIDIA(0): The NVIDIA X driver has encountered too many errors.  Falling

(WW) NVIDIA(0):     back to legacy PCI mode.

(II) NVIDIA(0): Initialized AGP GART.
```

I have gdm set to restart X on each logout.  But sooner or later, every time I start X, the screen flicks black for a moment, then comes back.  I can then look in /var/log/Xorg.0.log and see the preceding messages.  Things continue to work, but the real problem is that the display has slowed down.  I use icewm with focus-follows-mouse, and the focus following has slowed to the point that I'm frequently typing into the wrong window, because what was practically instant when running correctly has several seconds of lag, now.  It really annoys.

This is a relatively slow machine, a dual Pentium-3 733MHz with AGP4X, and an nVidia 7600GT.  At this point, in order to fix the problem I see 2 alternatives:

1 - Try dropping back to AGP2X, which is a bit of a pain, because it has to be done by tweaking during compilation.

2 - Try nouveau, which is supposed to be even faster for 2D.  I don't need 3D on this machine at all to do my job, so that limitation is OK.  In addition nouveau un-taints my kernel and gets me back to "supported."

I haven't done more down the first fork, other than to RTFM.  I'll have to re-read it, then start installing the nvidia driver with the ebuild command instead of emerge, so I can tweak before the compile step.  This of course means that the extra tweakage will have to be done for every new kernel.

As for the second fork, after checking out the nouveau page, I finally moved to layman, supplementing my manually managed overlays.  (and moving one manually managed overlay to layman.)  According to the nouveau pages I should see "nouveau" in "layman -L", but I don't.  So that's where that is stuck, at the moment.  I've dropped a question about this on another thread.

In the meantime, I'm still interested in other perspectives on this.

----------

