v3dv: keep track of the numbre of BOs in a command buffer
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
diff --git a/src/broadcom/vulkan/v3dv_cmd_buffer.c b/src/broadcom/vulkan/v3dv_cmd_buffer.c
index c1d4473..9e67a6d 100644
--- a/src/broadcom/vulkan/v3dv_cmd_buffer.c
+++ b/src/broadcom/vulkan/v3dv_cmd_buffer.c
@@ -35,6 +35,7 @@
return;
_mesa_set_add(cmd_buffer->bos, bo);
+ cmd_buffer->bo_count++;
}
VkResult
@@ -86,6 +87,8 @@
cmd_buffer->bos =
_mesa_set_create(NULL, _mesa_hash_pointer, _mesa_key_pointer_equal);
+ cmd_buffer->bo_count = 0;
+
v3dv_cl_init(cmd_buffer, &cmd_buffer->bcl);
v3dv_cl_init(cmd_buffer, &cmd_buffer->rcl);
v3dv_cl_init(cmd_buffer, &cmd_buffer->indirect);
diff --git a/src/broadcom/vulkan/v3dv_private.h b/src/broadcom/vulkan/v3dv_private.h
index fcd9c5c..484d2e4 100644
--- a/src/broadcom/vulkan/v3dv_private.h
+++ b/src/broadcom/vulkan/v3dv_private.h
@@ -402,6 +402,7 @@
* execute our job.
*/
struct set *bos;
+ uint32_t bo_count;
struct v3dv_bo *tile_alloc;
struct v3dv_bo *tile_state;