EXA classic problem with Xv
Yves De Muyter
yves at alfavisio.be
Thu Jun 10 10:51:14 PDT 2010
I just made a test and indeed it looks like it is using the fullscreen
pixmap. I'll fix the enless loop for now and look into migrating to one
of the other schemes.
Is there any documentation available about the differences between
exa_mixed and exa_driver ? Is exa_driver like complete handover of
pixmap migration to the driver ?
What whas the initial idea about the switch to exa_mixed ? Is there any
record about this discussion? A webpage? A mail? (google doesnt know
much about it...)
On Thu, Jun 10, 2010 at 01:16:00PM +0200, Michel Dänzer wrote:
> On Don, 2010-06-10 at 12:54 +0200, Yves De Muyter wrote:
> > Here you find the code:
> > http://code.google.com/p/gma500/source/browse/trunk/xserver-xorg-video-psb/xserver-xorg-video-psb-0.32.1/src/psb_video.c
> > The problem is on line 688.
> > The code tries to find the pointer to the buffer and the offset, and if
> > it doesnt find it, it calls exaMoveInPixmap().
> > I don't like the 'while' thing personally but I didn't write that code
> > and are willing to change it, that's not the problem.
> FWIW I don't think it makes sense to try exaMoveInPixmap more than once.
> > The problem is that exaMoveInPixmap() doesnt do anything if the pixmap
> > has a score that is 'PINNED', and that's the case here...
> As the pixmap was retrieved from a window, I *think* the only way it can
> be pinned is if it's the screen pixmap (i.e. you're not using a
> compositing manager, or it unredirected the fullscreen window). In that
> case I think the problem is actually a spurious failure of
> psbExaGetSuperOffset(), possibly due to an issue in exaGetPixmapOffset()
> - there's recently been some discussion about that with drivers like psb
> or geode.
> Of course these issues should be fixed, but in the long term it might
> make sense for the psb driver to use the EXA 'mixed' or 'driver' pixmap
> memory allocation scheme rather than the 'classic' one in rather special
> ways prone to breakage.
> Earthling Michel Dänzer | http://www.vmware.com
> Libre software enthusiast | Debian, X and DRI developer
> xorg at lists.freedesktop.org: X.Org support
> Archives: http://lists.freedesktop.org/archives/xorg
> Info: http://lists.freedesktop.org/mailman/listinfo/xorg
> Your subscription address: yves at connected.be
More information about the xorg