On Tue 28 Nov 2017, Jason Ekstrand wrote:
> ---
>  src/amd/vulkan/radv_device.c      | 8 ++++++--
>  src/amd/vulkan/radv_extensions.py | 1 +
>  src/amd/vulkan/radv_formats.c     | 8 ++++++--
>  3 files changed, 13 insertions(+), 4 deletions(-)
> 
> diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
> index 8e5ae0b..4517227 100644
> --- a/src/amd/vulkan/radv_device.c
> +++ b/src/amd/vulkan/radv_device.c
> @@ -2166,7 +2166,9 @@ VkResult radv_alloc_memory(VkDevice                     
>    _device,
>  
>       if (import_info) {
>               assert(import_info->handleType ==
> -                    VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR);
> +                    VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR ||
> +                    import_info->handleType ==
> +                    VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT);
>               mem->bo = device->ws->buffer_from_fd(device->ws, 
> import_info->fd,
>                                                    NULL, NULL);
>               if (!mem->bo) {
> @@ -3540,7 +3542,9 @@ VkResult radv_GetMemoryFdKHR(VkDevice _device,
>  
>       /* We support only one handle type. */

This comment needs updating. I suggest copy-pasting the comment from
anvil.

>       assert(pGetFdInfo->handleType ==
> -            VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR);
> +            VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR ||
> +            pGetFdInfo->handleType ==
> +            VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT);
>  
>       bool ret = radv_get_memory_fd(device, memory, pFD);
>       if (ret == false)

Also, radv_GetMemoryFdPropertiesKHR() (the next function in this file)
needs updating to support dma-buf.  Today it unconditionally fails.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to