diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/r600_exa.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/r600_exa.c b/src/r600_exa.c index 6fd922cd..a7d058b0 100644 --- a/src/r600_exa.c +++ b/src/r600_exa.c @@ -2259,9 +2259,8 @@ R600MarkSync(ScreenPtr pScreen) RADEONInfoPtr info = RADEONPTR(pScrn); struct radeon_accel_state *accel_state = info->accel_state; - accel_state->exaSyncMarker++; + return ++accel_state->exaSyncMarker; - return accel_state->exaSyncMarker; } static void @@ -2271,8 +2270,11 @@ R600Sync(ScreenPtr pScreen, int marker) RADEONInfoPtr info = RADEONPTR(pScrn); struct radeon_accel_state *accel_state = info->accel_state; - if (accel_state->exaMarkerSynced != marker) + if (accel_state->exaMarkerSynced != marker) { + R600WaitforIdlePoll(pScrn); accel_state->exaMarkerSynced = marker; + } + } static Bool @@ -4162,8 +4164,6 @@ R600PrepareAccess(PixmapPtr pPix, int index) RADEONInfoPtr info = RADEONPTR(pScrn); unsigned char *RADEONMMIO = info->MMIO; - R600WaitforIdlePoll(pScrn); - //flush HDP read/write caches OUTREG(HDP_MEM_COHERENCY_FLUSH_CNTL, 0x1); |