diff options
author | Lionel Landwerlin <[email protected]> | 2017-09-27 14:16:04 +0100 |
---|---|---|
committer | Lionel Landwerlin <[email protected]> | 2017-10-06 17:32:13 +0100 |
commit | d296dea54e243c41c2b3fbe631f7bcb87db6ae8c (patch) | |
tree | e36cd466a0f2ba163ffdd6a5dcefdcba3562af23 /src/intel/vulkan/anv_private.h | |
parent | b24b93d58431a4349eecddb07304f6eda648e997 (diff) |
anv/cmd_buffer: fix push descriptors with set > 0
When writing to set > 0, we were just wrongly writing to set 0. This
commit fixes this by lazily allocating each set as we write to them.
We didn't go for having them directly into the command buffer as this
would require an additional ~45Kb per command buffer.
v2: Allocate push descriptors from system memory rather than in BO
streams. (Lionel)
Cc: "17.2 17.1" <[email protected]>
Fixes: 9f60ed98e501 ("anv: add VK_KHR_push_descriptor support")
Reported-by: Daniel Ribeiro Maciel <[email protected]>
Signed-off-by: Lionel Landwerlin <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/intel/vulkan/anv_private.h')
-rw-r--r-- | src/intel/vulkan/anv_private.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index de0f49de39f..00264af8f29 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -1268,7 +1268,6 @@ struct anv_push_descriptor_set { /* Put this field right behind anv_descriptor_set so it fills up the * descriptors[0] field. */ struct anv_descriptor descriptors[MAX_PUSH_DESCRIPTORS]; - struct anv_buffer_view buffer_views[MAX_PUSH_DESCRIPTORS]; }; @@ -1695,7 +1694,7 @@ struct anv_cmd_state { struct anv_dynamic_state dynamic; bool need_query_wa; - struct anv_push_descriptor_set push_descriptor; + struct anv_push_descriptor_set * push_descriptors[MAX_SETS]; /** * Whether or not the gen8 PMA fix is enabled. We ensure that, at the top |