diff options
Diffstat (limited to 'src/freedreno')
-rw-r--r-- | src/freedreno/vulkan/tu_cs.c | 6 | ||||
-rw-r--r-- | src/freedreno/vulkan/tu_private.h | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/freedreno/vulkan/tu_cs.c b/src/freedreno/vulkan/tu_cs.c index 193ae5cc9fe..11e1737d5d3 100644 --- a/src/freedreno/vulkan/tu_cs.c +++ b/src/freedreno/vulkan/tu_cs.c @@ -307,7 +307,11 @@ tu_cs_reserve_space(struct tu_device *dev, VkResult result = tu_cs_add_bo(dev, cs, new_size); if (result != VK_SUCCESS) return result; - cs->next_bo_size = new_size * 2; + + /* double the size for the next bo */ + new_size <<= 1; + if (cs->next_bo_size < new_size) + cs->next_bo_size = new_size; } assert(tu_cs_get_space(cs) >= reserved_size); diff --git a/src/freedreno/vulkan/tu_private.h b/src/freedreno/vulkan/tu_private.h index 2f46134f962..f4c455d0d9d 100644 --- a/src/freedreno/vulkan/tu_private.h +++ b/src/freedreno/vulkan/tu_private.h @@ -484,7 +484,7 @@ struct tu_cs_entry const struct tu_bo *bo; uint32_t size; - uint64_t offset; + uint32_t offset; }; enum tu_cs_mode |