<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Nov 29, 2017 at 11:57 AM, Pohjolainen, Topi <span dir="ltr"><<a href="mailto:topi.pohjolainen@gmail.com" target="_blank">topi.pohjolainen@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Mon, Nov 27, 2017 at 07:05:58PM -0800, Jason Ekstrand wrote:<br>
> ---<br>
>  src/intel/vulkan/genX_cmd_<wbr>buffer.c | 17 ++++++++---------<br>
>  1 file changed, 8 insertions(+), 9 deletions(-)<br>
><br>
> diff --git a/src/intel/vulkan/genX_cmd_<wbr>buffer.c b/src/intel/vulkan/genX_cmd_<wbr>buffer.c<br>
> index 0c1ae83..be717eb 100644<br>
> --- a/src/intel/vulkan/genX_cmd_<wbr>buffer.c<br>
> +++ b/src/intel/vulkan/genX_cmd_<wbr>buffer.c<br>
> @@ -719,20 +719,19 @@ transition_color_buffer(struct anv_cmd_buffer *cmd_buffer,<br>
>        if (image->samples == 1 &&<br>
>            image->planes[plane].aux_usage != ISL_AUX_USAGE_CCS_E &&<br>
>            final_layout != VK_IMAGE_LAYOUT_COLOR_<wbr>ATTACHMENT_OPTIMAL) {<br>
> -         /* The CCS_D buffer may not be enabled in the final layout. Continue<br>
> -          * executing this function to perform a resolve.<br>
> +         /* The CCS_D buffer may not be enabled in the final layout. Call this<br>
> +          * function again with a initial layout of COLOR_ATTACHMENT_OPTIMAL<br>
> +          * to perform a resolve.<br>
>            */<br>
>            anv_perf_warn(cmd_buffer-><wbr>device->instance, image,<br>
>                          "Performing an additional resolve for CCS_D layout "<br>
>                          "transition. Consider always leaving it on or "<br>
>                          "performing an ambiguation pass.");<br>
> -      } else {<br>
> -         /* Writes in the final layout will be aware of the auxiliary buffer.<br>
> -          * In addition, the clear buffer entries and the auxiliary buffers<br>
> -          * have been populated with values that will result in correct<br>
> -          * rendering.<br>
> -          */<br>
> -         return;<br>
<br>
</div></div>I must be missing something here. This now calls transition_color_buffer()<br>
again also for the case that doesn't need resolves and after return goes<br>
and falls thru and does resolves.<span class=""><br></span></blockquote><div><br></div><div>Yikes!  You're not missing anything.  I'm missing a return statement.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
> +         transition_color_buffer(cmd_<wbr>buffer, image, aspect,<br>
> +                                 base_level, level_count,<br>
> +                                 base_layer, layer_count,<br>
> +                                 VK_IMAGE_LAYOUT_COLOR_<wbr>ATTACHMENT_OPTIMAL,<br>
> +                                 final_layout);<br>
>        }<br>
>     } else if (initial_layout != VK_IMAGE_LAYOUT_COLOR_<wbr>ATTACHMENT_OPTIMAL) {<br>
>        /* Resolves are only necessary if the subresource may contain blocks<br>
> --<br>
> 2.5.0.400.gff86faf<br>
><br>
</span>> ______________________________<wbr>_________________<br>
> mesa-dev mailing list<br>
> <a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
> <a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</blockquote></div><br></div></div>