[Xorg-driver-geode] "Allocate video memory with exaOffscreenAlloc" causes visual corruption with Xv

Daniel Drake dsd at laptop.org
Thu Jan 27 10:21:59 PST 2011


On 19 January 2011 01:48, Cui, Hunk <Hunk.Cui at amd.com> wrote:
> Hi, Daniel,
>
>        Thanks for your feedback and hint, I will try to reproduce this
> issue in my platform as soon as possible, and feel free time to modify
> it.

I had a look at fixing it, but am not sure how to proceed. It depends
on the motivation behind the original patch, and if it was actually
fixing anything or just a nice-looking change.

LXInitOffscreen() was written on the basis that EXA, Xvideo and
rotation each get their own separate buffers of offscreen memory. e.g.
see the comment:

	/* This might cause complaints - in order to avoid using
           xorg.conf as much as possible, we make assumptions about
           what a "default" memory map would look like.  After
           discussion, we agreed that the default driver should assume
           the user will want to use rotation and video overlays, and
	   EXA will get whatever is leftover.
        */

The patch changes that behaviour (without updating the comment) so
that Xvideo memory gets allocated via EXA, no special reservation is
made. That doesn't really make sense to me, and also goes against the
spirit of that earlier decision. What's the motivation behind this? Do
other drivers do the same?

I had a quick look at http://www.virtuousgeek.org/exa-driver.txt
It seems to suggest that exaOffscreenAlloc() cannot be used in the way
that this commit uses it -- UploadToScreen() is not supported
therefore we should be passing the final 2 arguments of
exaOffscreenAlloc() as non-NULL.

Daniel


More information about the Xorg-driver-geode mailing list