VGA arbiter: removing RAC
Egbert Eich
eich at suse.de
Thu Dec 20 05:38:45 PST 2007
Tiago Vignatti writes:
> Joerg Sonnenberger escreveu:
> > On Wed, Dec 19, 2007 at 08:45:53PM -0200, Tiago Vignatti wrote:
> >> The Resource Access Control inside Xorg is the guy responsible to take
> >> care of the various resources of memory and to share them in a wise
> >> manner when two or more graphics devices are active (think multi-head).
> >> As an alternative from RAC we can rely on VGA arbiter.
> >
> > How much work is the kernel part of the arbiter? You know, the Xserver
> > is not only used on Linux :-)
>
> git-clone http://www.inf.ufpr.br/ribas/repos/vga-module.git
>
> for more info about the code, please see
> http://lists.freedesktop.org/archives/xorg/2007-November/030420.html
>
> And yes, unfortunately we will need to keep the RAC module together with
> the VGA arbiter inside Xorg for some time due the portability of Xorg.
> Probably let autoconf set if Xorg needs RAC or the arbiter depending the
> OS would be fine and easy to do.
Why unfortunately?
I would think it should be possible to share a lot of code between
the DDX part that deals with the arbiter and RAC itself. A lot of
ideas that went into RAC have not been implemented in the arbiter.
The arbiter takes care of resource enabling and disabling and acts
as a broker between different processes - the latter is something
the broker inside the Xserver cannot do.
This however is not all of RAC. The code in the Xserver decides which
resources actually need to be disabled depending on if the device
actually decodes VGA or not.
VGA decoding can be disabled on some devices while they will still
identify themselves as VGA devices in PCI config space - so this is
something the driver has to set.
Furthermore it decides if VGA resources are actually needed for a
specific operation.
This provides the opportunity for a lot of optimization.
For platforms that don't provide an arbiter inside the kernel a
comparable functionality could be put into a user land broker.
I may have missed where the DDX bits of this VGA arbiter are developed.
Cheers,
Egbert.
More information about the xorg
mailing list