[PATCH 1/2] exa: Calling exaMarkSync after UTS is the drivers responsibility.

Michel Dänzer michel at daenzer.net
Sat Feb 7 06:48:46 PST 2009


On Sat, 2009-02-07 at 15:34 +0100, Maarten Maathuis wrote:
> On Sat, Feb 7, 2009 at 3:22 PM, Michel Dänzer <michel at daenzer.net> wrote:
> > On Fri, 2009-02-06 at 21:16 +0100, Maarten Maathuis wrote:
> >> ---
> >>  exa/exa_migration.c |    4 ++--
> >>  1 files changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/exa/exa_migration.c b/exa/exa_migration.c
> >> index 19e0f71..8fb6d2f 100644
> >> --- a/exa/exa_migration.c
> >> +++ b/exa/exa_migration.c
> >> @@ -231,7 +231,7 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
> >>
> >>      if (access_prepared)
> >>       exaFinishAccess(&pPixmap->drawable, fallback_index);
> >> -    else if (need_sync)
> >> +    else if (need_sync && sync)
> >>       sync (pPixmap->drawable.pScreen);
> >>
> >>      pExaPixmap->offscreen = save_offscreen;
> >> @@ -276,7 +276,7 @@ exaCopyDirtyToFb (ExaMigrationPtr migrate)
> >>      exaCopyDirty(migrate, &pExaPixmap->validFB, &pExaPixmap->validSys,
> >>                pExaScr->info->UploadToScreen, pExaPixmap->sys_ptr,
> >>                pExaPixmap->fb_ptr, pExaPixmap->sys_pitch,
> >> -              pExaPixmap->fb_pitch, EXA_PREPARE_DEST, exaMarkSync);
> >> +              pExaPixmap->fb_pitch, EXA_PREPARE_DEST, NULL);
> >>  }
> >
> > Won't this break existing drivers?
> >
> > What's the problem you're trying to solve with this?
> 
> It's just a correctness fix, exa.h clearly states:
> 
>      * If UploadToScreen() is performed asynchronously, it is up to the driver
>      * to call exaMarkSync().  This is in contrast to most other acceleration
>      * calls in EXA.

Ah, that makes sense.


-- 
Earthling Michel Dänzer           |                http://www.vmware.com
Libre software enthusiast         |          Debian, X and DRI developer


More information about the xorg-devel mailing list