Hi, On Thu, May 20, 2010 at 12:04:37AM +0200, ext Pierre-Loup A. Griffais wrote: > > Multiple cards work fine on my end. All this change does is create a few GCs > and Pictures upfront on each X screen; I don't believe it sits at a level > where > we can consider it's directly the cause of a system hang. > Can you provide more information regarding the issues you're having? What > driver > are you using? Try single-stepping through miDCDeviceInitialize() when the > server starts and progressively break into more functions to determine where > it > hangs with more accuracy. Also, if X is hung in the kernel because of an > interaction problem with the VGA-arbiter (as I still think that's the problem > you're having), using an SMP-capable setup should allow you to keep > interacting > with the system after X hangs.
It turned out to be a problem with VGA arbiter and nothing related with your actual changes. Sorry for the noise :( The arbiter inside the kernel has a bug that transfers to some random card which is owning the arbitration when other stop to decoding VGA legacy address. So X server had to wait inside the kernel because the arbiter was owning this random card while X was trying to access another one. I have a hack to fix it in my environment [0]. Anyway, I guess that Aaron is currently investigating this things there (at least we exchanged some privates messages regarding). BTW, we _really_ should skip the arbitration after POST the cards. Right now xf86VGAarbiterWrapFunctions is a total failure. It's totally prone to deadlocks everywhere. In theory all screen procedures inside ScreenRec should have a 1:1 mapping with the ones in VGAarbiterScreenRec. What you guys think about disable it by default? I have a patch working fine here [1]. Thanks, [0] http://people.freedesktop.org/~vignatti/tmp/0003-vgaarb-HACK-assume-safe-state-if-only-one-card-dec.patch [1] http://people.freedesktop.org/~vignatti/tmp/0001-xfree86-vgaarb-disable-VGA-decoding-after-POST.patch Tiago _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel