zink: set a flag for dmabuf init
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Fri, 10 Sep 2021 00:48:38 +0000 (20:48 -0400)
committerMarge Bot <eric+marge@anholt.net>
Tue, 14 Sep 2021 03:14:12 +0000 (03:14 +0000)
this will be useful for barrier handling

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11967>

src/gallium/drivers/zink/zink_resource.c
src/gallium/drivers/zink/zink_resource.h

index 46f6d9d..8bf78be 100644 (file)
@@ -748,6 +748,7 @@ resource_create(struct pipe_screen *pscreen,
       }
    } else {
       res->format = zink_get_format(screen, templ->format);
+      res->dmabuf_acquire = whandle && whandle->type == WINSYS_HANDLE_TYPE_FD;
       res->layout = VK_IMAGE_LAYOUT_UNDEFINED;
       res->optimal_tiling = optimal_tiling;
       res->aspect = aspect_from_format(templ->format);
index 6a51f7c..9a5ddf2 100644 (file)
@@ -122,6 +122,7 @@ struct zink_resource {
       uint32_t all_binds;
    };
 
+   bool dmabuf_acquire;
    struct sw_displaytarget *dt;
    unsigned dt_stride;