Mesa (staging/19.2): gallium/vl: don't set PIPE_HANDLE_USAGE_EXPLICIT_FLUSH

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Sep 26 15:48:26 UTC 2019


Module: Mesa
Branch: staging/19.2
Commit: b29682c2909a483f9ad7f7051e5e077d07c870bd
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b29682c2909a483f9ad7f7051e5e077d07c870bd

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Sep 17 18:22:08 2019 -0400

gallium/vl: don't set PIPE_HANDLE_USAGE_EXPLICIT_FLUSH

because vl doesn't call flush_resource and I wasn't able to find
all places where flush_resource needs to be called.

This fixes corrupted / unflushed surfaces with fullscreen videos on Raven.

Cc: 19.1 19.2 <mesa-stable at lists.freedesktop.org>
(cherry picked from commit f52afdf67274d58951124b20a42fe932a5deda4d)

---

 src/gallium/auxiliary/vl/vl_winsys_dri3.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/src/gallium/auxiliary/vl/vl_winsys_dri3.c b/src/gallium/auxiliary/vl/vl_winsys_dri3.c
index 56649654011..45a979e1bf6 100644
--- a/src/gallium/auxiliary/vl/vl_winsys_dri3.c
+++ b/src/gallium/auxiliary/vl/vl_winsys_dri3.c
@@ -221,7 +221,6 @@ dri3_alloc_back_buffer(struct vl_dri3_screen *scrn)
    int buffer_fd, fence_fd;
    struct pipe_resource templ, *pixmap_buffer_texture;
    struct winsys_handle whandle;
-   unsigned usage;
 
    buffer = CALLOC_STRUCT(vl_dri3_buffer);
    if (!buffer)
@@ -271,10 +270,8 @@ dri3_alloc_back_buffer(struct vl_dri3_screen *scrn)
    }
    memset(&whandle, 0, sizeof(whandle));
    whandle.type= WINSYS_HANDLE_TYPE_FD;
-   usage = PIPE_HANDLE_USAGE_EXPLICIT_FLUSH;
    scrn->base.pscreen->resource_get_handle(scrn->base.pscreen, NULL,
-                                           pixmap_buffer_texture, &whandle,
-                                           usage);
+                                           pixmap_buffer_texture, &whandle, 0);
    buffer_fd = whandle.handle;
    buffer->pitch = whandle.stride;
    buffer->width = templ.width0;




More information about the mesa-commit mailing list