[Mesa-dev] [PATCH 1/2] anv: ignore inline uniform blocks in anv_CmdPushDescriptorSetKHR()

Jason Ekstrand jason at jlekstrand.net
Tue Jun 11 14:05:47 UTC 2019


Alright then.

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

On June 11, 2019 04:57:27 Samuel Iglesias Gonsálvez <siglesias at igalia.com> 
wrote:

> According to the Vulkan spec, uniform blocks are not allowed to be
> updated through vkCmdPushDescriptorSetKHR().
>
> There are these spec quotes from "13.2.1. Descriptor Set Layout"
> that are relevant for this case:
>
> "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR specifies
> that descriptor sets must not be allocated using this layout, and
> descriptors are instead pushed by vkCmdPushDescriptorSetKHR."
>
> "If flags contains
> VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then all
> elements of pBindings must not have a descriptorType of
> VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT".
>
> There is no explicit mention in vkCmdPushDescriptorSetKHR() to forbid
> this case but it is implied in the creation of the descriptor set
> layout as aforementioned.
>
> Signed-off-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
> ---
> src/intel/vulkan/anv_cmd_buffer.c | 13 -------------
> 1 file changed, 13 deletions(-)
>
> diff --git a/src/intel/vulkan/anv_cmd_buffer.c 
> b/src/intel/vulkan/anv_cmd_buffer.c
> index b0ce00f6daf..3c020a1d5b2 100644
> --- a/src/intel/vulkan/anv_cmd_buffer.c
> +++ b/src/intel/vulkan/anv_cmd_buffer.c
> @@ -1081,19 +1081,6 @@ void anv_CmdPushDescriptorSetKHR(
>          }
>          break;
>
> -      case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT: {
> -         const VkWriteDescriptorSetInlineUniformBlockEXT *inline_write =
> -            vk_find_struct_const(write->pNext,
> -                                 
> WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT);
> -         assert(inline_write->dataSize == write->descriptorCount);
> -         anv_descriptor_set_write_inline_uniform_data(cmd_buffer->device, set,
> -                                                      write->dstBinding,
> -                                                      inline_write->pData,
> -                                                      write->dstArrayElement,
> -                                                      inline_write->dataSize);
> -         break;
> -      }
> -
>       default:
>          break;
>       }
> --
> 2.17.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev





More information about the mesa-dev mailing list