diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c index 751e93c3f78..267f783db10 100644 --- a/src/intel/vulkan/anv_image.c +++ b/src/intel/vulkan/anv_image.c @@ -974,10 +974,12 @@ check_memory_bindings(const struct anv_device *device, : ANV_IMAGE_MEMORY_BINDING_MAIN; /* Aliasing is incompatible with the private binding because it does not - * live in a VkDeviceMemory. The one exception is swapchain images. + * live in a VkDeviceMemory. The exception is either swapchain images or + * that the private binding is for a video motion vector buffer. */ assert(!(image->vk.create_flags & VK_IMAGE_CREATE_ALIAS_BIT) || image->from_wsi || + (plane->primary_surface.isl.usage & ISL_SURF_USAGE_VIDEO_DECODE_BIT) || image->bindings[ANV_IMAGE_MEMORY_BINDING_PRIVATE].memory_range.size == 0); /* Check primary surface */