grep for TSTD below

________________________________
From: xorg-driver-ati <[email protected]> on behalf of Michel 
Dänzer <[email protected]>
Sent: Wednesday, June 8, 2016 04:45
To: [email protected]
Cc: Yu, Qiang
Subject: [PATCH xf86-video-amdgpu 6/6] glamor: Reallocate linear pixmap BO if 
necessary for DRI2 PRIME

From: Michel Dänzer <[email protected]>

Fixes corruption when using DRI2 PRIME render offloading with the master
screen using this driver.

Reported-by: Qiang Yu <[email protected]>
Signed-off-by: Michel Dänzer <[email protected]>
---
 src/amdgpu_glamor.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/src/amdgpu_glamor.c b/src/amdgpu_glamor.c
index 1159e29..53ba277 100644
--- a/src/amdgpu_glamor.c
+++ b/src/amdgpu_glamor.c
@@ -328,10 +328,28 @@ amdgpu_glamor_share_pixmap_backing(PixmapPtr pixmap, 
ScreenPtr slave,
                                    void **handle_p)
 {
         ScreenPtr screen = pixmap->drawable.pScreen;
+       uint64_t tiling_info;
         CARD16 stride;
         CARD32 size;
         int fd;

+       tiling_info = amdgpu_pixmap_get_tiling_info(pixmap);
+       if (AMDGPU_TILING_GET(tiling_info, ARRAY_MODE) != 0) {
+               PixmapPtr linear;
+
+               /* We don't want to re-allocate the screen pixmap as
+                * linear, to avoid trouble with page flipping
+                */
+               if (screen->GetScreenPixmap(screen) == pixmap)
+                       return FALSE;
+
+               linear = screen->CreatePixmap(screen, pixmap->drawable.width,
+                                             pixmap->drawable.height,
+                                             pixmap->drawable.depth,
+                                             CREATE_PIXMAP_USAGE_SHARED);

TSTD:  If CreatePixmap fails won't linear be NULL?

+               amdgpu_glamor_set_pixmap_bo(&pixmap->drawable, linear);
+       }
+
         fd = glamor_fd_from_pixmap(screen, pixmap, &stride, &size);
         if (fd < 0)
                 return FALSE;
--
2.8.1

_______________________________________________
xorg-driver-ati mailing list
[email protected]
https://lists.x.org/mailman/listinfo/xorg-driver-ati
_______________________________________________
xorg-driver-ati mailing list
[email protected]
https://lists.x.org/mailman/listinfo/xorg-driver-ati

Reply via email to