[PATCH] xf86VGAarbiter,vgaHW: Only wrap co-operating VGA drivers

Chris Wilson chris at chris-wilson.co.uk
Fri Sep 13 03:09:45 PDT 2013


On Fri, Sep 13, 2013 at 11:56:26AM +0200, Mark Kettenis wrote:
> Wouldn't it make sense to move all arbitration for KMS devices into
> the kernel?  For the broken intel devices that can't turn off legacy
> VGA access completely you'd then have the kernel report that it
> doesn't need any legacy resources such that the X server would skip
> the lock/unlock for that device.  But you'd still include it in the
> number of devices such that wrapping would happen and the driver for
> the non-KMS devices would still participate in arbitration in the
> traditional way.

The arbitration is in the kernel. X is simply requesting from the kernel
VGA access around every operation irrespective of whether the driver
requires device access (let alone VGA access) for that operation.

X also disables DRI if the kernel reports there is more than one VGA
device in the system.

> This would also fix situations where you have for example a Wayland
> Compositor running on your KMS device, but still want to run an X
> server on the VGA device.

Wayland (i.e. each wayland client) would need to learn a lot more about
the realities of hw before it is able to cooperate, in the same way as
unblocking DRI requires moving the vgaarb handling into each DRI client.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the xorg-devel mailing list