[PATCH xf86-video-ati] Restore location of radeon_set_pixmap_bo call in drmmode_create_bo_pixmap
Michel Dänzer
michel at daenzer.net
Thu Oct 13 07:34:35 UTC 2016
From: Michel Dänzer <michel.daenzer at amd.com>
radeon_set_pixmap_bo sets the tiling flags, so it needs to be called
before radeon_get_pixmap_tiling_flags. Fixes a regression with EXA and
TearFree.
Fixes: 8523a733b6a5 ("Propagate failure from radeon_set_pixmap_bo")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98097
Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
---
src/drmmode_display.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 1b1b3e6..a8054c1 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -131,6 +131,10 @@ static PixmapPtr drmmode_create_bo_pixmap(ScrnInfoPtr pScrn,
if (!info->use_glamor)
exaMoveInPixmap(pixmap);
+
+ if (!radeon_set_pixmap_bo(pixmap, bo))
+ goto fail;
+
if (info->ChipFamily >= CHIP_FAMILY_R600) {
surface = radeon_get_pixmap_surface(pixmap);
if (surface && psurf)
@@ -170,9 +174,6 @@ static PixmapPtr drmmode_create_bo_pixmap(ScrnInfoPtr pScrn,
}
}
- if (!radeon_set_pixmap_bo(pixmap, bo))
- goto fail;
-
if (!info->use_glamor ||
radeon_glamor_create_textured_pixmap(pixmap,
radeon_get_pixmap_private(pixmap)))
--
2.9.3
More information about the amd-gfx
mailing list