xf86-video-ati: Branch 'master'

Michel Dänzer daenzer at kemper.freedesktop.org
Mon Jul 27 05:26:30 PDT 2009


 src/radeon_exa.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit 5ad2519c2a7c0df389b2cd7cf7151c7e4b7252a8
Author: Michel Dänzer <daenzer at vmware.com>
Date:   Mon Jul 27 14:22:02 2009 +0200

    KMS: Explicitly specify VRAM and GTT domains when allocating BOs for pixmaps.
    
    Without this, apparently they are initially allocated in system RAM (or
    possibly GTT), so any GPU rendering to them first triggers a copy of the whole
    uninitialized data to VRAM...
    
    We may want to explore more sophisticated schemes in the future, but for now
    this seems to improve KMS 2D performance quite a bit.

diff --git a/src/radeon_exa.c b/src/radeon_exa.c
index 4f1f9ea..25e3311 100644
--- a/src/radeon_exa.c
+++ b/src/radeon_exa.c
@@ -391,7 +391,8 @@ void *RADEONEXACreatePixmap(ScreenPtr pScreen, int size, int align)
 	return new_priv;
 
     new_priv->bo = radeon_bo_open(info->bufmgr, 0, size,
-				  align, 0, 0);
+				  align, RADEON_GEM_DOMAIN_VRAM |
+				  RADEON_GEM_DOMAIN_GTT, 0);
     if (!new_priv->bo) {
 	xfree(new_priv);
 	ErrorF("Failed to alloc memory\n");


More information about the xorg-commit mailing list