On Thu, Sep 12, 2013 at 02:09:20PM +0200, Mark Kettenis wrote: > > From: Chris Wilson <[email protected]> > > Date: Thu, 12 Sep 2013 12:37:44 +0100 > > > > Presently, we wrap every single operation on every driver if the kernel > > reports that there is more than one VGA capable device in the system. > > This is irrespective of whether VGA is being used by any driver, and > > causes a significant performance impact (4-5x) for CPU bound operations. > > > > The approach taken in this patch is to first only enable VGA arbitration > > for drivers that require VGA resources. This is detected by moving the > > initialisation from the common xf86 code to the vgaHW module. This is > > strictly an ABI break as any driver that directly uses VGA (i.e. without > > using the vgaHW module) will need to make its own declaration of intent. > > Secondly, we then only wrap the operations with vgaarb get/put for the > > drivers that require VGA access. If we only have a single driver > > requring VGA access, we just wrap Enter/LeaveVT and lock the VGA > > arbiter for the entire duration that the Xserver is active. > > Won't this break running two X servers on the same machine, where both > of them require VGA access?
It still respects VT switching. I'm not entirely clear how you would run two *VGA* xservers simultaneously otherwise. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
