Freshly emerged 2004.0 system, bootstrapped from Stage1. During xinit, DRI fails to load. Also, there are error messages from agpgart & mtrr in the logs; XF86 log: (EE) MGA(0): [drm] DRIScreenInit failed. Disabling DRI /var/log/messages: Apr 6 13:06:28 garlic [drm:drm_init] *ERROR* Cannot initialize the agpgart module. Apr 6 13:06:23 garlic mtrr: 0xe4000000,0x2000000 overlaps existing 0xe4000000,0x1000000 Reproducible: Always Steps to Reproduce: restart X Actual Results: same again Expected Results: DRI would load! Note that lsmod shows agpgart loaded; agpgart 25896 0 But nothing is referencing it. I tried manually loading the various mga modules compiled with my 2.6.3-r1 kernel which are in /lib/modules/2.6.3-gentoo-r1/kernel/drivers/video/matrox/...namely; g450_pll.ko matroxfb_DAC1064.ko matroxfb_accel.ko matroxfb_crtc2.ko matroxfb_misc.ko i2c-matroxfb.ko matroxfb_Ti3026.ko matroxfb_base.ko matroxfb_g450.ko If loaded in the correct order, which takes some doing, all but the i2c load (as a result of i2c not working with 2.6 kernels). All of this is a resul of trying to get 3D hw acceleration. 2D performance is superb. But, for example, glxgears gets <300fps! This is bad...
Try NOT using any mga framebuffer. Just use the mga DRM from x11-drm (latest version should work on 2.6), and disable everything mga in the kernel. kernel/drivers/video/matrox/ isn't the right place to load the DRM from, it's in char/drm/. You're loading all sorts of weird framebuffer/i2c/etc stuff.
you're using 2.6. therefore you need both the agpgart core _and_ the agp chipset module corresponding to your motherboard's chipset, and both of those need to be loaded before X. $ lspci | grep bridge will tell you what sort of motherboard chipset you have.
need more info from reporter before this can be acted on, but appears to be a configuration issue. please reopen if you are still experiencing this. also note that DRI support for PCI Matrox cards is experimental and not yet delivered in any released version of X.