This series is a second revision on my earlier two series to implement the following extensions:
- VK_KHX_external_memory_capabilities - VK_KHX_external_memory - VK_KHX_external_memory_fd - VK_KHX_external_semaphore_capabilities - VK_KHX_external_semaphore - VK_KHX_external_semaphore_fd This series has a few bug fixes from Chad and Chris. The main difference, however, is the presence of the new anv_bo_cache. This makes duplicate imports work correctly. The one remaining issue that I'm not quite sure how we want to sort out is that you can export a semaphore and import it as memory or vice versa and it will work just fine. We should probably be returning INVALID_HANDLE_KHX if the user tries to do that. Chad Versace (1): anv: Implement VK_KHX_external_memory_capabilities Jason Ekstrand (17): anv: Add the pci_id into the shader cache UUID anv: Refactor device_get_cache_uuid into physical_device_init_uuids anv/physical_device: Rename uuid to pipeline_cache_uuid util/vk: Add helpers for finding an extension struct anv: Implement VK_KHX_external_memory anv/allocator: Add a BO cache anv: Use the BO cache for DeviceMemory allocations anv: Implement VK_KHX_external_memory_fd anv: Move queues, events, and semaphores to their own file anv: Add a real semaphore struct anv: Implement VK_KHX_external_semaphore_capabilities anv: Implement VK_KHX_external_semaphore anv/cmd_buffer: Use the device allocator for QueueSubmit anv: Pull the guts of cmd_buffer_execbuf into a helper anv: Implement VK_KHX_external_semaphore_fd anv/gem: Use EXECBUFFER2_WR when the FENCE_OUT flag is set anv: Implement support for exporting semaphores as FENCE_FD src/intel/Makefile.sources | 1 + src/intel/vulkan/Makefile.sources | 86 ++++ src/intel/vulkan/anv_allocator.c | 212 ++++++++++ src/intel/vulkan/anv_batch_chain.c | 175 ++++++-- src/intel/vulkan/anv_device.c | 655 +++++++++--------------------- src/intel/vulkan/anv_entrypoints_gen.py | 6 + src/intel/vulkan/anv_formats.c | 118 +++++- src/intel/vulkan/anv_gem.c | 41 +- src/intel/vulkan/anv_image.c | 2 +- src/intel/vulkan/anv_intel.c | 14 +- src/intel/vulkan/anv_pipeline_cache.c | 4 +- src/intel/vulkan/anv_private.h | 88 ++++- src/intel/vulkan/anv_queue.c | 682 ++++++++++++++++++++++++++++++++ src/intel/vulkan/anv_wsi.c | 6 +- src/util/vk_util.h | 17 + 15 files changed, 1584 insertions(+), 523 deletions(-) create mode 100644 src/intel/vulkan/Makefile.sources create mode 100644 src/intel/vulkan/anv_queue.c -- 2.5.0.400.gff86faf _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
