diff --git a/.pick_status.json b/.pick_status.json index bf39725e12d..36a95994c68 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1274,7 +1274,7 @@ "description": "venus: workaround to consider ALIAS for image mem req cache", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/virtio/vulkan/vn_image.c b/src/virtio/vulkan/vn_image.c index 97bf2e8609e..0b07094e18a 100644 --- a/src/virtio/vulkan/vn_image.c +++ b/src/virtio/vulkan/vn_image.c @@ -97,9 +97,15 @@ vn_image_get_image_reqs_key(struct vn_device *dev, if (!dev->image_reqs_cache.ht) return false; - /* Strip the alias bit as the memory requirements are identical. */ + /* Strip the alias bit as the memory requirements are identical. + * + * Except on: + * - ANV: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14671 + */ VkImageCreateInfo local_info; - if (create_info->flags & VK_IMAGE_CREATE_ALIAS_BIT) { + if ((create_info->flags & VK_IMAGE_CREATE_ALIAS_BIT) && + (dev->physical_device->renderer_driver_id != + VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA)) { local_info = *create_info; local_info.flags &= ~VK_IMAGE_CREATE_ALIAS_BIT; create_info = &local_info;