I've been trying to figure out how come X wouldn't load when I have two of the new drm-core type drivers loaded. Then if finally occurred to me to load the old drivers and see what X does, it fails too.
I have an AGP radeon and PCI r128. modprobe in radeon and r128. I'll attach my xconf. Now start X. It won't start. In programs/Xserver/GL/dri/dri.c static int lockRefCount=0; void DRILock(ScreenPtr pScreen, int flags) { DRIScreenPrivPtr pDRIPriv = DRI_SCREEN_PRIV(pScreen); if(!pDRIPriv) return; if (!lockRefCount) DRM_LOCK(pDRIPriv->drmFD, pDRIPriv->pSAREA, pDRIPriv->myContext, flags); lockRefCount++; } How is this going to work with two DRI devices? The error is that the first DRILock on the kernel context is never set. Right before this DRM is not called with a request for a lock when there should be one. I haven't got an X server put together for debugging yet, but this sure looks like the likely culprit for why the lock call isn't being made. -- Jon Smirl [EMAIL PROTECTED]
xorg.dual
Description: Binary data