From: Tapani Pälli Date: Tue, 12 Nov 2019 15:32:56 +0000 (+0200) Subject: Revert "st/dri: assume external consumers of back buffers can write to the buffers" X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7951eb146c1bb57c6d2231a9675046c535530b6a;p=mesa.git Revert "st/dri: assume external consumers of back buffers can write to the buffers" This reverts commit 1d1b4578211dcc69cfab8879d0cdafaba1eec948. This series caused unexpected flickering artifacts with Iris driver on Chrome OS and EGL_EXT_image_flush_external spec has not been published yet. Acked-by: Eric Engestrom Acked-by: Kristian H. Kristensen --- diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c index 63e90bd3df0..01646228c19 100644 --- a/src/gallium/state_trackers/dri/dri2.c +++ b/src/gallium/state_trackers/dri/dri2.c @@ -1108,10 +1108,10 @@ dri2_query_image_by_resource_handle(__DRIimage *image, int attrib, int *value) return false; } - usage = PIPE_HANDLE_USAGE_FRAMEBUFFER_WRITE; - if (image->use & __DRI_IMAGE_USE_BACKBUFFER) - usage |= PIPE_HANDLE_USAGE_EXPLICIT_FLUSH; + usage = PIPE_HANDLE_USAGE_EXPLICIT_FLUSH; + else + usage = PIPE_HANDLE_USAGE_FRAMEBUFFER_WRITE; if (!pscreen->resource_get_handle(pscreen, NULL, image->texture, &whandle, usage)) @@ -1194,10 +1194,10 @@ dri2_query_image_by_resource_param(__DRIimage *image, int attrib, int *value) return false; } - handle_usage = PIPE_HANDLE_USAGE_FRAMEBUFFER_WRITE; - if (image->use & __DRI_IMAGE_USE_BACKBUFFER) - handle_usage |= PIPE_HANDLE_USAGE_EXPLICIT_FLUSH; + handle_usage = PIPE_HANDLE_USAGE_EXPLICIT_FLUSH; + else + handle_usage = PIPE_HANDLE_USAGE_FRAMEBUFFER_WRITE; if (!dri2_resource_get_param(image, param, handle_usage, &res_param)) return false;