Jump to content

read this if you have ATI/Nvidia issues


Recommended Posts

There have been a number of bugs reported in Red Hat bugzilla against

X which have recently been tracked down to 3rd party video drivers being

the culprit behind the problem the user was experienced. In many of the

cases however, it wasn't obvious that the 3rd party drivers were at

fault because the user was actually using the Red Hat supplied drivers,

and not using the 3rd party driver that they had previously installed.

 

Since I've wasted at least 6-8 hours in the last month diagnosing issues

of this nature which have later turned out to be caused by proprietary

drivers having been "installed" on the system, wether they were actually

being *used* or not, I thought I should write a short useful

informational email on the topic to the lists to try and inform people

of some pitfalls you may encounter if you even _install_ 3rd party

video drivers.

 

Both ATI and Nvidia, and perhaps even other 3rd party drivers out there

come in some form of tarball or equivalent form from the particular

vendor. Most users seem to favour the hardware vendor supplied drivers

directly, rather than using more sanely packaged 3rd party packages that

contain the same drivers. This is very unfortunate, because installing

these 3rd party tarball driver installations is very harmful to your

clean OS installation.

 

Both ATI and Nvidia's proprietary video driver installation utilities

replace the Red Hat supplied libGL library with their own libGL.

Nvidia's driver installs a replacement libglx.a X server module,

removing the Red Hat supplied X.Org module in the process. ATI's

driver may or may not replace libglx.a with it's own, I haven't checked

(but if someone could confirm that, I'd appreciate knowing for certain).

 

Once you have either of these drivers installed on your system, you

can no longer use DRI with any video card. So if you install the

ATI fglrx driver, while you should still be able in theory at least

to use the Red Hat supplied radeon driver, you may no longer be able

to use DRI with the radeon driver, because ATI's driver has blown away

critical files that come with the OS that are needed for proper

operation.

 

If you install Nvidia's driver, and later decide to install an ATI

card, and still have Nvidia's driver installed, bang - you will not

be able to get Red Hat supplied DRI 3D acceleration to work. You must

remove Nvidia's driver completely from your hard disk, and completely

reinstall all of the xorg-x11 and mesa packages, and ensure they are

all intact by using:

 

rpm -Va

 

Another problem being reported by a few people, is they are unable to

get DRI to work because mesa libGL is looking for the DRI drivers in

the wrong directory. The claim is that mesa is looking for the DRI

drivers in /usr/X11R6/lib/modules.

 

On a fresh OS install however, my findings are that mesa's libGL very

much is not looking in /usr/X11R6 for it's modules. It is looking in

the proper location of /usr/lib/dri for the modules. Why then is it

looking in the wrong place on some systems?

 

Answer: Because of fglrx having been installed. If you have had a

previous OS release installed, and have installed ATI's fglrx driver

from tarball, it has removed the OS supplied libGL et al and made

backup copies of them aparently. Now you do an OS upgrade which works

properly and installs everything in the right place. Then you uninstall

ATI's fglrx with whatever script or whatever they supply, and now you

try to run X, and get no DRI!

 

Well, since you don't have fglrx installed at all, it must be our

OS at fault right! Wrong. the uninstall script has put the OLD

libGL it backed up (from FC4 or whatever) back in the system,

overwriting the new FC5 supplied libGL in the process, and since

ATI's fglrx driver is DRI based as well, it looks for the DRI

modules in the wrong place now.

 

Conclusions:

If you are going to use any 3rd party proprietary drivers, please do

yourself and everyone else a huge favour, and at least get your

drivers from reputable 3rd party rpm package repositories such as

livna.org which packages both the nvidia and ati proprietary drivers

in rpm packages which install the drivers sanely without overwriting

Red Hat/Fedora supplied files. These 3rd party packages install

the files in alternative locations, and configure the X server et al.

appropriately so that everything works. Since they do not blow

away OS supplied files, you can use the OS supplied drivers still

by reconfiguring xorg.conf. Also, if you decide to uninstall the

3rd party drivers via rpm, they just go away and cause no further

harm to the system. So PLEASE USE THIRD PARTY RPM PACKAGES if you

_must_ use 3rd party drivers. It helps create world peace.

 

If you choose to install ATI or Nvidia tarball/whatever drivers

directly from ATI/Nvidia (or any other vendor for that matter), your

system is 100% completely and totally unsupported. Even if you are

using _our_ drivers, your 3rd party driver installation may have

blown away our libGL, our libglx.a or any other files that have been

supplied by our OS. As such, your system is not supported.

 

For those who encounter a bug of any kind whatsoever while using

3rd party video drivers, completely remove the 3rd party drivers

from your system, and then perform a full "yum update" to ensure

you have the latest Fedora Core supplied X packages installed. After

doing this, do an "rpm -Va" of your whole system, in particular the

xorg-x11-*, mesa-* and lib* packages. If there are any discrepancies

found in any of the Fedora supplied packages, in particular in libGL,

or the X server packages, remove them and reinstall them and reverify

that the files installed on your system are the ones shipped by

Fedora.

 

If you are able to reproduce the problem you are having after having

performed these steps, and having ensured that you are neither using

3rd party drivers, nor even have them installed, then feel free to

file a bug report in bugzilla.

 

By doing this small amount of pre-diagnosis of your own system if

you are using 3rd party drivers, you will save yourself a lot of

headaches, and will save other people, including developers such

as myself from wasting endless hours trying to diagnose problems

which turn out to be bogus. Hours which could have been spent

fixing legitimate bugs that are present in bugzilla.

 

As an additional note - if anyone is using proprietary drivers and

has any problems which they believe might actually be a bug in

Xorg and not in their proprietary driver - file such bugs directly

in X.Org bugzilla. X.Org has an nVidia (closed) component specifically

for the proprietary driver, and Nvidia engineers get those bugs and

will investigate them over time.

 

Anyhow, I hope this helps people understand at least some of the

problems that can occur when you opt to using 3rd party drivers,

present some alternatives, and to help people diagnose their own

problems which might be caused by having installed 3rd party

drivers.

 

Thanks for reading.

TTYL

 

 

P.S. Feel free to forward this email on to any other lists or

people whom you think might benefit from it. Also, if anyone thinks

this information would be useful to have on the Fedora Wiki or

somewhere else, feel free to copy my email into a wiki page, or

paraphrase, etc.

 

 

 

--

Mike A. Harris,

Systems Engineer, X11 Development team,

Red Hat Canada, Ltd.

Link to post
Share on other sites
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...