Mesa (master): venus: enable VK_EXT_queue_family_foreign

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Apr 29 17:43:49 UTC 2021


Module: Mesa
Branch: master
Commit: 293255889c29d30ea55d9c80e81497f365d936d9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=293255889c29d30ea55d9c80e81497f365d936d9

Author: Yiwei Zhang <zzyiwei at chromium.org>
Date:   Mon Apr 19 22:19:50 2021 +0000

venus: enable VK_EXT_queue_family_foreign

Signed-off-by: Yiwei Zhang <zzyiwei at chromium.org>
Reviewed-by: Chia-I Wu <olvaffe at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10335>

---

 src/virtio/vulkan/vn_device.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/virtio/vulkan/vn_device.c b/src/virtio/vulkan/vn_device.c
index 1703b29e41b..0a742d3e00c 100644
--- a/src/virtio/vulkan/vn_device.c
+++ b/src/virtio/vulkan/vn_device.c
@@ -1485,6 +1485,7 @@ vn_physical_device_get_supported_extensions(
 
       /* EXT */
       .EXT_image_drm_format_modifier = true,
+      .EXT_queue_family_foreign = true,
       .EXT_transform_feedback = true,
    };
 }
@@ -3067,9 +3068,15 @@ vn_device_fix_create_info(const struct vn_device *dev,
          VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME;
 #endif
 
-   if (dev->base.base.enabled_extensions.ANDROID_native_buffer)
+   if (dev->base.base.enabled_extensions.ANDROID_native_buffer) {
       block_exts[block_count++] = VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME;
 
+      if (!dev->base.base.enabled_extensions.EXT_queue_family_foreign &&
+          dev->physical_device->renderer_extensions.EXT_queue_family_foreign)
+         extra_exts[extra_count++] =
+            VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME;
+   }
+
    if (dev->base.base.enabled_extensions.KHR_external_memory_fd ||
        dev->base.base.enabled_extensions.EXT_external_memory_dma_buf) {
       switch (physical_dev->external_memory.renderer_handle_type) {



More information about the mesa-commit mailing list