EXA up / download syncing.

Thomas Hellström unichrome at shipmail.org
Mon Nov 7 03:07:00 PST 2005


I found some comments in exa.h regarding syncing after screen uploads 
and downloads:

 /* Attempt to download the rectangle from the in-framebuffer pSrc into
     * dst, given the pitch.  May fail.  Since it is likely
     * accelerated, a markSync will follow it as with other acceleration
     * hooks.
     */
    Bool (*DownloadFromScreen)(PixmapPtr pSrc,
                               int x,  int y,
                               int w,  int h,
                               char *dst,  int dst_pitch);

 From this I draw the conclusion that EXA will issue a waitSync either 
before the old FB memory is reused or the new System memory is reloaded 
to screen. Same thing for UploadToScreen.

However, this does not seem to happen, and I get rendering errors. If 
the driver immediately syncs, however, the problem goes away. However, 
it would be nice to have the former behaviour since the via drm is 
capable of queueing and pipelining DMA blit and SG-type mapping operations.

I know a similar question has been on the list before, but could anyone 
shed some light on this?

/Thomas





More information about the xorg mailing list