[Mesa-dev] [PATCH] radv: Possible demand compilation fix.

Timothy Arceri tarceri at itsqueeze.com
Thu Aug 16 01:32:35 UTC 2018


Thanks fixes steamvr for me :)

Tested-by: Timothy Arceri <tarceri at itsqueeze.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>

On 16/08/18 00:25, Bas Nieuwenhuizen wrote:
> Seems that in a single case we use the renderpass before checking
> the pipeline, so check the renderpass before we use it.
> 
> Fixes: fbcd1673144 "radv: Add on-demand compilation of built-in shaders."
> ---
>   src/amd/vulkan/radv_meta_resolve_fs.c | 8 ++++++++
>   1 file changed, 8 insertions(+)
> 
> diff --git a/src/amd/vulkan/radv_meta_resolve_fs.c b/src/amd/vulkan/radv_meta_resolve_fs.c
> index 21a5922f5df..af4a6fe7a66 100644
> --- a/src/amd/vulkan/radv_meta_resolve_fs.c
> +++ b/src/amd/vulkan/radv_meta_resolve_fs.c
> @@ -463,6 +463,14 @@ void radv_meta_resolve_fragment_image(struct radv_cmd_buffer *cmd_buffer,
>   	radv_decompress_resolve_src(cmd_buffer, src_image, src_image_layout,
>   				    region_count, regions);
>   
> +	if (!device->meta_state.resolve_fragment.rc[samples_log2].render_pass[fs_key][dst_layout]) {
> +		VkResult ret = create_resolve_pipeline(device, samples_log2, radv_fs_key_format_exemplars[fs_key]);
> +		if (ret != VK_SUCCESS) {
> +			cmd_buffer->record_result = ret;
> +			return;
> +		}
> +	}
> +
>   	rp = device->meta_state.resolve_fragment.rc[samples_log2].render_pass[fs_key][dst_layout];
>   
>   	radv_meta_save(&saved_state, cmd_buffer,
> 


More information about the mesa-dev mailing list