[PATCH 1/2] exa: Calling exaMarkSync after UTS is the drivers responsibility.
Maarten Maathuis
madman2003 at gmail.com
Sat Feb 7 06:34:56 PST 2009
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?
>
>
> --
> Earthling Michel Dänzer | http://www.vmware.com
> Libre software enthusiast | Debian, X and DRI developer
>
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.
Maarten.
More information about the xorg-devel
mailing list