Revert "zink: export fd info for all 2d images"

This reverts commit fda7371b4cfc5a15f2207f5165f3a8e14442a522.

this breaks suballocation

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16252>
This commit is contained in:
Mike Blumenkrantz 2022-04-29 07:42:05 -04:00 committed by Marge Bot
parent b978761385
commit 17ac8e7604

View file

@ -497,7 +497,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->target == PIPE_TEXTURE_2D;
bool needs_export = (templ->bind & ZINK_BIND_VIDEO) != 0;
if (whandle) {
if (whandle->type == WINSYS_HANDLE_TYPE_FD || whandle->type == ZINK_EXTERNAL_MEMORY_HANDLE)
needs_export |= true;
@ -505,7 +505,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;
@ -777,7 +777,7 @@ resource_object_create(struct zink_screen *screen, const struct pipe_resource *t
}
VkExportMemoryAllocateInfo emai;
if (needs_export) {
if ((templ->bind & ZINK_BIND_VIDEO) || ((templ->bind & PIPE_BIND_SHARED) && shared)) {
emai.sType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO;
emai.handleTypes = export_types;