Don't load AGP modules at bootime, let Xorg do that.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
hotplug (Ubuntu) |
Invalid
|
Medium
|
Scott James Remnant (Canonical) |
Bug Description
Please add all kernel agp modules to /etc/hotplug/
Problem:
The nVidia and ATI proprietary drivers work best when using their own AGP
kernel modules and kernel drivers, and are neccessary for accelerated 3D on Linux. (nVidia uses 'nvidia' and ATI uses 'fglrx' from the Linux restricted
modules package.) Linux also has a set of AGP modules (under /lib/modules/
fglrx). Hotplug loads linux AGP modules at bootime before Xorg. Xorg can also load AGP modules when needed (i.e. the ATI driver can load fglrx if needed). BUT! Xorg and its drivers can't load a different AGP module if the linux one has already been loaded by hotplug at boottime. This is the problem.
Solution:
Stop hotplug from loading linux kernel agp modules at boottime. Xorg and its drivers are capable of loading agp modules when needed. Letting Xorg do this means that it can choose the agp module that it needs according to what is configured in /etc/X11/xorg.conf. If xorg.conf is configured to use the open source ati driver for example, then the linux agp will be loaded. If proprietary ATI is needed, then the proprietary agp (fglrx) module will get loaded.
This problem was encountered while developing Guidance and displayconfig for inclusion in Dapper. Email me if there are any questions.
I would just like to mention that the NVidia modules do not necessarily work best with their own built in AGP. This is why the NVidia modules (at least up to 1.0-7174) defaulted to using AGPGART then falling back to NVidia's built in AGP (years ago before 1.0-1251 it defaulted to using NVidia's built in AGP but the in kernel AGPGART improved dramatically and supported more chipsets).