On Wed, Nov 29, 2017 at 1:41 PM, Chad Versace <chadvers...@chromium.org> wrote:
> 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. > Done. > > 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. > This was missing from anv as well. I've added it and will re-push the branch in a minute. For radv, I really don't know what to do here. I'm sure there are some FD properties I should probably query and then walk a list of types and fill out some bits. I have no idea how their memory handle interfaces work. Dave? --Jason
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev