hasvk: make sure aux is disabled for memory objects

Cc: mesa-stable
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27948>
(cherry picked from commit 9d18cde8ed)
This commit is contained in:
Tapani Pälli 2024-03-04 07:35:04 +02:00 committed by Eric Engestrom
parent eb07359061
commit a3b1539bb3
3 changed files with 8 additions and 8 deletions

View file

@ -1294,7 +1294,7 @@
"description": "hasvk: make sure aux is disabled for memory objects",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -1031,11 +1031,6 @@ add_all_surfaces_implicit_layout(
return result;
}
/* Disable aux if image supports export without modifiers. */
if (image->vk.external_handle_types != 0 &&
image->vk.tiling != VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT)
continue;
result = add_aux_surface_if_supported(device, image, plane, plane_format,
format_list_info,
ANV_OFFSET_IMPLICIT, stride,
@ -1214,7 +1209,7 @@ alloc_private_binding(struct anv_device *device,
VkResult
anv_image_init(struct anv_device *device, struct anv_image *image,
const struct anv_image_create_info *create_info)
struct anv_image_create_info *create_info)
{
const VkImageCreateInfo *pCreateInfo = create_info->vk_info;
const struct VkImageDrmFormatModifierExplicitCreateInfoEXT *mod_explicit_info = NULL;
@ -1276,6 +1271,11 @@ anv_image_init(struct anv_device *device, struct anv_image *image,
image->disjoint = image->n_planes > 1 &&
(pCreateInfo->flags & VK_IMAGE_CREATE_DISJOINT_BIT);
/* Disable aux if image supports export without modifiers. */
if (image->vk.external_handle_types != 0 &&
image->vk.tiling != VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT)
create_info->isl_extra_usage_flags |= ISL_SURF_USAGE_DISABLE_AUX_BIT;
const isl_tiling_flags_t isl_tiling_flags =
choose_isl_tiling_flags(device->info, create_info, isl_mod_info,
image->vk.wsi_legacy_scanout);

View file

@ -3639,7 +3639,7 @@ struct anv_image_create_info {
};
VkResult anv_image_init(struct anv_device *device, struct anv_image *image,
const struct anv_image_create_info *create_info);
struct anv_image_create_info *create_info);
void anv_image_finish(struct anv_image *image);