On 07/31/15 09:02 PM, Connor Behan wrote:
On 28/07/15 11:59 AM, Thomas Klausner wrote:
On Thu, Feb 26, 2015 at 02:59:49AM -0500, Connor Behan wrote:
On 25/02/15 06:41 PM, Tormod Volden wrote:
And then disable the DownloadFromScreen() implementation, or perhaps
even disable EXA altogether.
If nobody can find the real problem that is maybe all that can be done.
The fix should be:
char *src = pExa->memoryBase + exaGetPixmapOffset(pSrc);
When I first saw exaGetPixmapFirstPixel() in savage and mga, I assumed
this was just a shorthand for the above. But evidently it's not. As for
other broken EXA drivers, I don't have hardware to test but some basic
suggestions are:
1. Use the above instead of pPix->devPrivate.ptr.
2. Make all hooks start by verifying that pSrc is non-NULL.
3. Remove UTS / DFS hooks unless they actually do a DRM blit.
So what can we do to make this progress?
Thomas
I just looked through the drivers on the main site and found 7
problematic ones.
* Geode is not careful enough with pSrc and its drawables
* Mga is not careful enough either, plus it has a useless DFS hook
* Radeonhd is not careful enough with pSrc / drawables
* Siliconmotion is not careful enough with the drawable
* Sis has useless UTS / DFS hooks but its wrappers do a good job of
hiding this
* Via is not careful enough with pSrc / drawables and it uses devPrivate
all over the place
* Xgi's UTS / DFS hooks are useless (except maybe on ARM) and it uses
devPrivate
Some of those drivers are no longer maintained or being updated.
For instance, http://cgit.freedesktop.org/xorg/driver/xf86-video-radeonhd
has no commits in the past 5 years, and -via was last touched in 2009.
http://cgit.freedesktop.org/xorg/driver/xf86-video-xgi/log/ shows the
occasional push, but no tag/release since 2010.
--
-Alan Coopersmith- [email protected]
Oracle Solaris Engineering - http://blogs.oracle.com/alanc
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel