rmesa->state.aos_count = nr;
- radeon_bo_unmap(rmesa->radeon.dma.current);
-
return R300_FALLBACK_NONE;
}
rmesa->state.aos[i].bo = NULL;
}
}
- radeonReleaseDmaRegion(&rmesa->radeon);
}
void r300EmitCacheFlush(r300ContextPtr rmesa)
{
int ret;
+ radeonReleaseDmaRegion(rmesa);
+
LOCK_HARDWARE(rmesa);
ret = rcommonFlushCmdBufLocked(rmesa, caller);
UNLOCK_HARDWARE(rmesa);
fprintf(stderr, "%s\n", __FUNCTION__);
if (rmesa->dma.flush) {
- radeon_bo_unmap(rmesa->dma.current);
rmesa->dma.flush(rmesa->glCtx);
}
void radeonReleaseDmaRegion(radeonContextPtr rmesa)
{
+ if (RADEON_DEBUG & DEBUG_IOCTL)
+ fprintf(stderr, "%s %p\n", __FUNCTION__, rmesa->dma.current);
if (rmesa->dma.current) {
rmesa->dma.nr_released_bufs++;
- radeon_bo_unref(rmesa->dma.current);
+ radeon_bo_unmap(rmesa->dma.current);
+ radeon_bo_unref(rmesa->dma.current);
}
rmesa->dma.current = NULL;
}