Reviewed-by: Juan A. Suarez Romero <jasua...@igalia.com>
On Wed, 2017-04-26 at 10:01 -0700, Jason Ekstrand wrote: > --- > src/intel/vulkan/anv_allocator.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/src/intel/vulkan/anv_allocator.c > b/src/intel/vulkan/anv_allocator.c > index 8f3b31f..61d09f3 100644 > --- a/src/intel/vulkan/anv_allocator.c > +++ b/src/intel/vulkan/anv_allocator.c > @@ -881,9 +881,13 @@ anv_state_stream_alloc(struct anv_state_stream *stream, > return ANV_STATE_NULL; > > uint32_t offset = align_u32(stream->next, alignment); > - if (offset + size > stream->block_size) { > + if (offset + size > stream->block.alloc_size) { > + uint32_t block_size = stream->block_size; > + if (block_size < size) > + block_size = round_to_power_of_two(size); > + > stream->block = anv_state_pool_alloc_no_vg(stream->state_pool, > - stream->block_size, > + block_size, > stream->block_size); > > struct anv_state_stream_block *sb = stream->block.map; > @@ -898,7 +902,7 @@ anv_state_stream_alloc(struct anv_state_stream *stream, > stream->next = sizeof(*sb); > > offset = align_u32(stream->next, alignment); > - assert(offset + size <= stream->block_size); > + assert(offset + size <= stream->block.alloc_size); > } > > struct anv_state state = stream->block; _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev