[Mesa-dev] [PATCH] anv: GetDeviceImageFormatProperties: fix TRANSFER formats

Lionel Landwerlin lionel.g.landwerlin at intel.com
Mon Aug 22 17:15:12 UTC 2016


I should start to remember to put someone in Cc...

On 13/08/16 01:30, Jason Ekstrand wrote:
> Much better. Thanks!
>
> Reviewed-by: Jason Ekstrand <jason at jlekstrand.net 
> <mailto:jason at jlekstrand.net>>
>
> On Fri, Aug 12, 2016 at 5:00 PM, Lionel Landwerlin 
> <llandwerlin at gmail.com <mailto:llandwerlin at gmail.com>> wrote:
>
>     We let the user believe we support some transfer formats which we
>     don't.
>     This can lead to crashes when actually trying to use those formats for
>     example on dEQP-VK.api.copy_and_blit.image_to_image.* tests.
>
>     Let all formats we can render to or sample from as meta implements
>     transfers
>     using attachments.
>
>     Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com
>     <mailto:lionel.g.landwerlin at intel.com>>
>     Cc: Jason Ekstrand <jason at jlekstrand.net
>     <mailto:jason at jlekstrand.net>>
>     ---
>      src/intel/vulkan/anv_formats.c | 22 ++++++----------------
>      1 file changed, 6 insertions(+), 16 deletions(-)
>
>     diff --git a/src/intel/vulkan/anv_formats.c
>     b/src/intel/vulkan/anv_formats.c
>     index b26e48a..b06e29b 100644
>     --- a/src/intel/vulkan/anv_formats.c
>     +++ b/src/intel/vulkan/anv_formats.c
>     @@ -507,25 +507,15 @@ VkResult
>     anv_GetPhysicalDeviceImageFormatProperties(
>            sampleCounts =
>     isl_device_get_sample_counts(&physical_device->isl_dev);
>         }
>
>     -   if (usage & VK_IMAGE_USAGE_TRANSFER_SRC_BIT) {
>     -      /* Meta implements transfers by sampling from the source
>     image. */
>     -      if (!(format_feature_flags &
>     VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT)) {
>     -         goto unsupported;
>     -      }
>     -   }
>     -
>     -#if 0
>     -   if (usage & VK_IMAGE_USAGE_TRANSFER_DST_BIT) {
>     -      if (anv_format_for_vk_format(format)->has_stencil) {
>     -         /* Not yet implemented because copying to a W-tiled
>     surface is crazy
>     -          * hard.
>     -          */
>     -         anv_finishme("support VK_IMAGE_USAGE_TRANSFER_DST_BIT for "
>     -                      "stencil format");
>     +   if (usage & (VK_IMAGE_USAGE_TRANSFER_SRC_BIT |
>     +                VK_IMAGE_USAGE_TRANSFER_DST_BIT)) {
>     +      /* Accept transfers on anything we can sample from or
>     renderer to. */
>     +      if (!(format_feature_flags &
>     (VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT |
>     + VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT |
>     + VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT))) {
>               goto unsupported;
>            }
>         }
>     -#endif
>
>         if (usage & VK_IMAGE_USAGE_SAMPLED_BIT) {
>            if (!(format_feature_flags &
>     VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT)) {
>     --
>     2.8.1
>
>
>
>
> _______________________________________________
> 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/20160822/7bcae074/attachment.html>


More information about the mesa-dev mailing list