On Tue, 2017-07-11 at 17:04 -0700, Jason Ekstrand wrote: > We were early returning and never created the NULL surface state. > > Cc: mesa-sta...@lists.freedesktop.org
This patch fixes a bug that affected me. Tested-by: James Legg <jl...@feralinteractive.com> I submitted a similar patch before seeing this one (https://patchwork.freedesktop.org/patch/167047/). I'll drop that if this one is merged. James > --- > src/intel/vulkan/genX_cmd_buffer.c | 23 +++++++++++------------ > 1 file changed, 11 insertions(+), 12 deletions(-) > > diff --git a/src/intel/vulkan/genX_cmd_buffer.c > b/src/intel/vulkan/genX_cmd_buffer.c > index 53c58ca..9b3bb10 100644 > --- a/src/intel/vulkan/genX_cmd_buffer.c > +++ b/src/intel/vulkan/genX_cmd_buffer.c > @@ -429,19 +429,18 @@ genX(cmd_buffer_setup_attachments)(struct > anv_cmd_buffer *cmd_buffer, > > vk_free(&cmd_buffer->pool->alloc, state->attachments); > > - if (pass->attachment_count == 0) { > + if (pass->attachment_count > 0) { > + state->attachments = vk_alloc(&cmd_buffer->pool->alloc, > + pass->attachment_count * > + sizeof(state->attachments[0]), > + 8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT); > + if (state->attachments == NULL) { > + /* Propagate VK_ERROR_OUT_OF_HOST_MEMORY to vkEndCommandBuffer */ > + return anv_batch_set_error(&cmd_buffer->batch, > + VK_ERROR_OUT_OF_HOST_MEMORY); > + } > + } else { > state->attachments = NULL; > - return VK_SUCCESS; > - } > - > - state->attachments = vk_alloc(&cmd_buffer->pool->alloc, > - pass->attachment_count * > - sizeof(state->attachments[0]), > - 8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT); > - if (state->attachments == NULL) { > - /* Propagate VK_ERROR_OUT_OF_HOST_MEMORY to vkEndCommandBuffer */ > - return anv_batch_set_error(&cmd_buffer->batch, > - VK_ERROR_OUT_OF_HOST_MEMORY); > } > > /* Reserve one for the NULL state. */ > -- > 2.5.0.400.gff86faf _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev