v3dv: keep track of the numbre of BOs in a command buffer
authorIago Toral Quiroga <itoral@igalia.com>
Tue, 17 Dec 2019 10:32:15 +0000 (11:32 +0100)
committerMarge Bot <eric+marge@anholt.net>
Tue, 13 Oct 2020 21:21:25 +0000 (21:21 +0000)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>

src/broadcom/vulkan/v3dv_cmd_buffer.c
src/broadcom/vulkan/v3dv_private.h

index c1d4473..9e67a6d 100644 (file)
@@ -35,6 +35,7 @@ v3dv_cmd_buffer_add_bo(struct v3dv_cmd_buffer *cmd_buffer, struct v3dv_bo *bo)
       return;
 
    _mesa_set_add(cmd_buffer->bos, bo);
+   cmd_buffer->bo_count++;
 }
 
 VkResult
@@ -86,6 +87,8 @@ cmd_buffer_create(struct v3dv_device *device,
 
    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);
index fcd9c5c..484d2e4 100644 (file)
@@ -402,6 +402,7 @@ struct v3dv_cmd_buffer {
     * execute our job.
     */
    struct set *bos;
+   uint32_t bo_count;
 
    struct v3dv_bo *tile_alloc;
    struct v3dv_bo *tile_state;