v3d: do not limit new CL space allocations with branch to 4096 bytes
authorIago Toral Quiroga <itoral@igalia.com>
Wed, 30 Oct 2019 10:33:44 +0000 (11:33 +0100)
committerIago Toral Quiroga <itoral@igalia.com>
Mon, 16 Dec 2019 07:42:37 +0000 (08:42 +0100)
For layered rendering we need to emit per layer rendering commands
lists so we we can end up requiring a fairly large buffer for this
if the number of layers is large enough.

Reviewed-by: Alejandro PiƱeiro <apinheiro@igalia.com>
src/gallium/drivers/v3d/v3d_cl.c

index 575bf5c18e4c352697698020badb9e938d9ea2f0..8d3d56eed741dc4d41ae0a3442531051d00ee1b1 100644 (file)
@@ -63,7 +63,7 @@ v3d_cl_ensure_space_with_branch(struct v3d_cl *cl, uint32_t space)
         if (cl_offset(cl) + space + cl_packet_length(BRANCH) <= cl->size)
                 return;
 
-        struct v3d_bo *new_bo = v3d_bo_alloc(cl->job->v3d->screen, 4096, "CL");
+        struct v3d_bo *new_bo = v3d_bo_alloc(cl->job->v3d->screen, space, "CL");
         assert(space <= new_bo->size);
 
         /* Chain to the new BO from the old one. */