[Mesa-dev] [PATCH 1/2] anv/format: handle unsupported formats properly

Jason Ekstrand jason at jlekstrand.net
Mon Nov 14 17:29:02 UTC 2016


On Mon, Nov 14, 2016 at 5:23 AM, Iago Toral Quiroga <itoral at igalia.com>
wrote:

> According to the spec for vkGetPhysicalDeviceImageFormatProperties:
>
> "If format is not a supported image format, or if the combination of
> format,
>  type, tiling, usage, and flags is not supported for images, then
>  vkGetPhysicalDeviceImageFormatProperties returns
> VK_ERROR_FORMAT_NOT_SUPPORTED."
>
> Makes the following Vulkan CTS tests report 'Not Supported' instead of
> crashing:
>
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_unorm
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_snorm
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_uscaled
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_sscaled
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_uint
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_sint
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8_srgb
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_unorm
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_snorm
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_uscaled
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_sscaled
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_uint
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_sint
> dEQP-VK.api.image_clearing.clear_color_image.1d_b8g8r8a8_srgb
> dEQP-VK.api.image_clearing.clear_color_image.1d_r4g4_unorm_pack8
> dEQP-VK.api.image_clearing.clear_color_image.1d_r8_srgb
> dEQP-VK.api.image_clearing.clear_color_image.1d_r8g8_srgb
> dEQP-VK.api.image_clearing.clear_color_image.1d_r8g8b8_srgb
> dEQP-VK.api.image_clearing.clear_color_image.1d_b5g5r5a1_unorm_pack16
> ---
>  src/intel/vulkan/anv_formats.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/src/intel/vulkan/anv_formats.c b/src/intel/vulkan/anv_
> formats.c
> index 7497a38..bca9aeb 100644
> --- a/src/intel/vulkan/anv_formats.c
> +++ b/src/intel/vulkan/anv_formats.c
> @@ -511,6 +511,9 @@ VkResult anv_GetPhysicalDeviceImageFormatProperties(
>        break;
>     }
>
> +   if (anv_formats[format].isl_format == ISL_FORMAT_UNSUPPORTED)
> +      goto unsupported;
> +
>

Can we move this a bit higher up?  This is an early return so it makes
sense to return as quickly as we can.

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>


>     /* Our hardware doesn't support 1D compressed textures.
>      *    From the SKL PRM, RENDER_SURFACE_STATE::SurfaceFormat:
>      *    * This field cannot be a compressed (BC*, DXT*, FXT*, ETC*,
> EAC*) format
> --
> 2.7.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20161114/ed230312/attachment.html>


More information about the mesa-dev mailing list