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

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Sep 27 10:01:50 UTC 2019


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

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 1558d832555..24a00b08295 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