xf86-video-intel: 2 commits - src/sna/sna_accel.c

Chris Wilson ickle at kemper.freedesktop.org
Mon Jun 23 06:47:43 PDT 2014


 src/sna/sna_accel.c |   18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

New commits:
commit 6c5658b14451239b8e4333702a227d83eed09f96
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Jun 23 14:11:27 2014 +0100

    sna: Promote to full GPU bo after forced migration away from CPU bo
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 20a0f84..defc89d 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -3845,6 +3845,8 @@ prefer_gpu_bo:
 				if (!sna_pixmap_move_to_gpu(pixmap, MOVE_WRITE | MOVE_READ | __MOVE_FORCE))
 					return NULL;
 
+				sna_damage_all(&priv->gpu_damage, pixmap);
+
 				DBG(("%s: allocated GPU bo for operation\n", __FUNCTION__));
 				goto done;
 			}
commit 25776547bb7d76010f948769c8c08a7f418b15fd
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Jun 23 14:02:51 2014 +0100

    sna: Prefer rendering on the CPU to avoid damage migration
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 9752b18..20a0f84 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -3851,14 +3851,16 @@ prefer_gpu_bo:
 			goto move_to_gpu;
 		}
 
-		if (priv->gpu_bo && priv->gpu_bo->tiling) {
-			DBG(("%s: prefer to use GPU bo for rendering large pixmaps\n", __FUNCTION__));
-			goto prefer_gpu_bo;
-		}
+		if ((priv->cpu_damage == NULL || flags & IGNORE_DAMAGE)) {
+			if (priv->gpu_bo && priv->gpu_bo->tiling) {
+				DBG(("%s: prefer to use GPU bo for rendering large pixmaps\n", __FUNCTION__));
+				goto prefer_gpu_bo;
+			}
 
-		if (priv->cpu_bo->pitch >= 4096) {
-			DBG(("%s: prefer to use GPU bo for rendering wide pixmaps\n", __FUNCTION__));
-			goto prefer_gpu_bo;
+			if (priv->cpu_bo->pitch >= 4096) {
+				DBG(("%s: prefer to use GPU bo for rendering wide pixmaps\n", __FUNCTION__));
+				goto prefer_gpu_bo;
+			}
 		}
 
 		if ((flags & IGNORE_DAMAGE) == 0 && priv->cpu_bo->snoop) {


More information about the xorg-commit mailing list