From 01ebdb4d7a8bb751167153554f9122d996e4ea91 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Mon, 20 Aug 2012 15:33:26 +0100 Subject: [PATCH] sna: Remove confusing is_cpu() The only real user now has its own heuristics, so convert the remaining users over to !is_gpu(). Signed-off-by: Chris Wilson --- src/sna/gen2_render.c | 3 ++- src/sna/gen3_render.c | 2 +- src/sna/gen4_render.c | 4 ++-- src/sna/gen5_render.c | 5 ++--- src/sna/sna_render_inline.h | 26 -------------------------- 5 files changed, 7 insertions(+), 33 deletions(-) diff --git a/src/sna/gen2_render.c b/src/sna/gen2_render.c index 31859b45..fea1791d 100644 --- a/src/sna/gen2_render.c +++ b/src/sna/gen2_render.c @@ -1479,7 +1479,8 @@ try_blt(struct sna *sna, src->pDrawable->width, src->pDrawable->height)); return true; } - return is_cpu(src->pDrawable); + + return !is_gpu(src->pDrawable); } static bool diff --git a/src/sna/gen3_render.c b/src/sna/gen3_render.c index 48f104e4..72a25759 100644 --- a/src/sna/gen3_render.c +++ b/src/sna/gen3_render.c @@ -2428,7 +2428,7 @@ source_use_blt(struct sna *sna, PicturePtr picture) if (too_large(picture->pDrawable->width, picture->pDrawable->height)) return true; - return is_cpu(picture->pDrawable) || is_dirty(picture->pDrawable); + return !is_gpu(picture->pDrawable); } static bool diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c index a56ef797..d72a2fd7 100644 --- a/src/sna/gen4_render.c +++ b/src/sna/gen4_render.c @@ -1996,7 +1996,7 @@ picture_is_cpu(PicturePtr picture) if (!picture->pDrawable) return false; - return is_cpu(picture->pDrawable) || is_dirty(picture->pDrawable); + return !is_gpu(picture->pDrawable); } static inline bool prefer_blt(struct sna *sna) @@ -2063,7 +2063,7 @@ untransformed(PicturePtr p) static bool need_upload(PicturePtr p) { - return p->pDrawable && untransformed(p) && is_cpu(p->pDrawable); + return p->pDrawable && untransformed(p) && !is_gpu(p->pDrawable); } static bool diff --git a/src/sna/gen5_render.c b/src/sna/gen5_render.c index 71e77a47..9b976c82 100644 --- a/src/sna/gen5_render.c +++ b/src/sna/gen5_render.c @@ -2012,8 +2012,7 @@ picture_is_cpu(PicturePtr picture) if (!picture->pDrawable) return false; - - return is_cpu(picture->pDrawable) || is_dirty(picture->pDrawable); + return !is_gpu(picture->pDrawable); } static bool @@ -2073,7 +2072,7 @@ untransformed(PicturePtr p) static bool need_upload(PicturePtr p) { - return p->pDrawable && untransformed(p) && is_cpu(p->pDrawable); + return p->pDrawable && untransformed(p) && !is_gpu(p->pDrawable); } static bool diff --git a/src/sna/sna_render_inline.h b/src/sna/sna_render_inline.h index 3849a880..64f8a46f 100644 --- a/src/sna/sna_render_inline.h +++ b/src/sna/sna_render_inline.h @@ -87,32 +87,6 @@ is_gpu(DrawablePtr drawable) return priv->gpu_bo && kgem_bo_is_busy(priv->gpu_bo); } -static inline bool -is_cpu(DrawablePtr drawable) -{ - struct sna_pixmap *priv = sna_pixmap_from_drawable(drawable); - if (priv == NULL || priv->clear) - return true; - - if (priv->cpu_bo && kgem_bo_is_busy(priv->cpu_bo)) - return false; - - if (DAMAGE_IS_ALL(priv->cpu_damage)) - return true; - - if (priv->gpu_damage && kgem_bo_is_busy(priv->gpu_bo)) - return false; - - return true; -} - -static inline bool -is_dirty(DrawablePtr drawable) -{ - struct sna_pixmap *priv = sna_pixmap_from_drawable(drawable); - return priv == NULL || kgem_bo_is_dirty(priv->gpu_bo); -} - static inline bool too_small(struct sna_pixmap *priv) {