diff options
author | Mike Blumenkrantz <michael.blumenkrantz@gmail.com> | 2022-04-28 16:30:43 -0400 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2022-04-29 00:33:26 +0000 |
commit | 711c31d6078ad153421d5229a7b940d48816d2a9 (patch) | |
tree | 05624082cf90a9555cd65e6046bdb9d22afeb4e1 | |
parent | c025cb9ee9d79ebfb66a577556e04deecfe012ed (diff) |
zink: export fd info for all 2d images
there's no way to add this later, so here we go
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16226>
-rw-r--r-- | src/gallium/drivers/zink/zink_resource.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/gallium/drivers/zink/zink_resource.c b/src/gallium/drivers/zink/zink_resource.c index 7fdbb4e52c4..983a7bcb795 100644 --- a/src/gallium/drivers/zink/zink_resource.c +++ b/src/gallium/drivers/zink/zink_resource.c @@ -495,7 +495,7 @@ resource_object_create(struct zink_screen *screen, const struct pipe_resource *t VK_IMAGE_ASPECT_PLANE_2_BIT, }; VkExternalMemoryHandleTypeFlags external = 0; - bool needs_export = (templ->bind & ZINK_BIND_VIDEO) != 0; + bool needs_export = templ->target == PIPE_TEXTURE_2D; if (whandle) { if (whandle->type == WINSYS_HANDLE_TYPE_FD || whandle->type == ZINK_EXTERNAL_MEMORY_HANDLE) needs_export |= true; @@ -503,7 +503,7 @@ resource_object_create(struct zink_screen *screen, const struct pipe_resource *t unreachable("unknown handle type"); } if (needs_export) { - if (whandle && whandle->type == ZINK_EXTERNAL_MEMORY_HANDLE) { + if (!whandle || whandle->type == ZINK_EXTERNAL_MEMORY_HANDLE) { external = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT; } else { external = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT; @@ -775,7 +775,7 @@ resource_object_create(struct zink_screen *screen, const struct pipe_resource *t } VkExportMemoryAllocateInfo emai; - if ((templ->bind & ZINK_BIND_VIDEO) || ((templ->bind & PIPE_BIND_SHARED) && shared)) { + if (needs_export) { emai.sType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO; emai.handleTypes = export_types; |