# No Direct Rendering nVidia Help!

## Phylum

Hi All,

I thank you for taking the time to review this post.  I'm no Gentoo guru but I've spent, what I believe to me, quite a bit of time combing through forums on here, reading the fabulous documentation provided by the Gentoo folks and a few Wiki's and sites found through Google.  I started getting confused with AIGLX, XGL, and some other stuff so I went back to my roots which was the Gentoo documentation, which walked me through getting GLX & direct rendering working to begin with.

Problem:  After doing an emerge sync, kernel upgrade to 2.6.21 & emerge --deep --update --ask world, direct rendering is no longer enabled:

```
glxinfo | grep direct

direct rendering: No
```

Now, I would start off with the old "Before this kernel upgrade, 2.6.17/2.6.19 (or thereabouts), the `glxgears` output was 30k+fps, but now its..." however, lots of reading has informed me that `glxgears` is a poor tool for measuring performance.  So lets not go there!  Instead, I use StarCraft (under wine of corse) as a guide, along with the OpenGL screen savers.  The OpenGL screen savers seem to run 'OK' except for the bitmap one, which used to run smoothly at one point.

After the `emerge --sync`, kernel upgrade, and `emerge -Dua world`, I re-emerged nvidia-drivers and ran `eselect opengl set nvidia` to confirm it was set properly.

Hardware:

AMD XP2800+

nVidia Corporation NV43 [GeForce 6600] (rev a2) (from lspci) with 256MB

Relevant Information:

```
# eselect opengl list

Available OpenGL implementations:

  [1]   nvidia *

  [2]   xorg-x11
```

Lets take a look at /proc/driver/nvidia/agp

```
# cat /proc/driver/nvidia/agp/card

Fast Writes:     Supported

SBA:             Supported

AGP Rates:       8x 4x

Registers:       0xff000e1b:0x1f000302

# cat /proc/driver/nvidia/agp/host-bridge

Host Bridge:     PCI device 1106:0269

Fast Writes:     Supported

SBA:             Supported

AGP Rates:       8x 4x

Registers:       0x1f000a1b:0x00000b02

# cat /proc/driver/nvidia/agp/status

Status:          Enabled

Driver:          AGPGART

AGP Rate:        8x

Fast Writes:     Disabled

SBA:             Enabled
```

I've noticed that in some forums, the 'Driver:' output for `cat /proc/driver/nvidia/agp/status` was 'NVIDIA', but I don't know how to set that up.  I'm more than willing to read some information, rather than be spoon fed.  (read:  I need to learn what I did & where I went wrong, not just have someone serve me up a plate!).  As for 'Fast Writes' being disabled, this could be a BIOS setting that I'll check on the next reboot.

Make.Conf Contains nVidia

```
# cat /etc/make.conf | grep nvidia

VIDEO_CARDS="nvidia"
```

What's Configured in /proc/config.gz

```
# gunzip -c /proc/config.gz | grep AGP

CONFIG_AGP=y

# CONFIG_AGP_ALI is not set

# CONFIG_AGP_ATI is not set

CONFIG_AGP_AMD=y

# CONFIG_AGP_AMD64 is not set

CONFIG_AGP_INTEL=y

CONFIG_AGP_NVIDIA=y

# CONFIG_AGP_SIS is not set

# CONFIG_AGP_SWORKS is not set

CONFIG_AGP_VIA=y

CONFIG_AGP_EFFICEON=m

# gunzip -c /proc/config.gz | grep NVI

CONFIG_AGP_NVIDIA=y

# CONFIG_FB_NVIDIA is not set

# gunzip -c /proc/config.gz | grep FB_RIVA

# CONFIG_FB_RIVA is not set
```

glxinfo Vendor Information

```
# glxinfo | grep vendor

server glx vendor string: NVIDIA Corporation

client glx vendor string: SGI

OpenGL vendor string: NVIDIA Corporation
```

Relevant Files

Output of glxinfo

Xorg.Log

xorg.conf

Output of xdpyinfo

Output of dmesg

nvidia-installer.log

I once again thank you for taking the time to review this post and hear my 'cry for help.'  Any suggestions or guidance is greatly appreciated - again I'm not looking to be spoon fed, I'd like to know where I messed up!

Thanks Everyone!

----------

## NeddySeagoon

Phylum,

All the info you need is in /usr/share/doc/nvidia-drivers-1.0.9639/README.bz2 or whatever your driver version is.

The default agpgart is nvidia but it can only be used if the kernel agpgart driver is not loaded and yours appears to be built in.

----------

## TeMpEsT_BR

I had a similar problem here...

# gpasswd -a <user> video 

Worked for me...

----------

## Phylum

 *NeddySeagoon wrote:*   

> Phylum,
> 
> All the info you need is in /usr/share/doc/nvidia-drivers-1.0.9639/README.bz2 or whatever your driver version is.
> 
> The default agpgart is nvidia but it can only be used if the kernel agpgart driver is not loaded and yours appears to be built in.

 

Are you saying I shouldn't follow: http://www.gentoo.org/doc/en/nvidia-guide.xml or that it is incorrect?

Is there a benefit to doing it manually (following the installation instructions in /usr/share/doc/nvidia-drivers-1.0.9639/README.bz2) versus `emerge nvidia-drivers` ?

----------

 *TeMpEsT_BR wrote:*   

> I had a similar problem here...
> 
> # gpasswd -a <user> video
> 
> Worked for me...

 

I neglected to post that previously but yes, I did do that.  Thank you![/quote]

----------

## NeddySeagoon

Phylum,

You should follow http://www.gentoo.org/doc/en/nvidia-guide.xml for the install and the readme for the set up.

What the gentoo documents don't tell is that there appears to be a group of nVidia cards that are not covered by the legacy drivers and have been dropped from the newest one. I learned this hard hard was, as I have one.

What card do you have ?

It can be identified with lspci but its lspci -n line will be more useful.  The last group of four digits is the GPU ID and you can look that up in Appendix A of the readme to see if the drive you have supports your chip or not.  Like this ...

```
03:00.0 VGA compatible controller: nVidia Corporation NV28 [GeForce4 Ti 4200 AGP 8x] (rev a1)

03:00.0 0300: 10de:0281 (rev a1)
```

so I have a 0281 GPU which appears in Appendix A

```
    GeForce4 Ti 4800                      0x0280

    GeForce4 Ti 4200 with AGP8X           0x0281

    GeForce4 Ti 4800 SE                   0x0282
```

for the 1.0.9639 but not in the latest one.

The readme also gives you all the xorg.conf options that your installed version of the driver supports.

----------

## cdstealer

Hi,

I had a similar issue.  I resolved it by unmerging mesa and any nvidia packages and uninstalling the nvidia drivers that I usually used from Nvidia's site, then just emerge -av nvidia-drivers (if you have an older nvidia card then you may need to emerge nividia-legacy-drivers).  This automatically re-merged mesa.  After a reboot direct rendering was back.

Hope this hels.

CD

----------

## caruso

Hi,

first of all you remove all CONFIG_AGP_* except CONFIG_AGP. To do this leave only: device drivers->character device->/dev/agpgart. Make shure you have unselected DIRECT RENDERING MANAGER.

----------

