anv: avoid memory type changes with INTEL_DEBUG=noccs

Otherwise replay of renderdoc captures don't work.

Instead avoid passing the flag down the allocator.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33583>
This commit is contained in:
Lionel Landwerlin 2025-02-17 17:44:52 +02:00 committed by Marge Bot
parent 891132c3ec
commit 252cac1e5c
3 changed files with 9 additions and 12 deletions

View file

@ -1552,7 +1552,9 @@ VkResult anv_AllocateMemory(
/* TODO: Disabling compression on external bos will cause problems once we /* TODO: Disabling compression on external bos will cause problems once we
* have a modifier that supports compression (Xe2+). * have a modifier that supports compression (Xe2+).
*/ */
if (!(alloc_flags & ANV_BO_ALLOC_EXTERNAL) && mem_type->compressed) if (!(alloc_flags & ANV_BO_ALLOC_EXTERNAL) &&
mem_type->compressed &&
!INTEL_DEBUG(DEBUG_NO_CCS))
alloc_flags |= ANV_BO_ALLOC_COMPRESSED; alloc_flags |= ANV_BO_ALLOC_COMPRESSED;
if (mem_type->dynamic_visible) if (mem_type->dynamic_visible)

View file

@ -2144,9 +2144,6 @@ resolve_anb_image(struct anv_device *device,
static bool static bool
anv_image_is_pat_compressible(struct anv_device *device, struct anv_image *image) anv_image_is_pat_compressible(struct anv_device *device, struct anv_image *image)
{ {
if (INTEL_DEBUG(DEBUG_NO_CCS))
return false;
if (device->info->ver < 20) if (device->info->ver < 20)
return false; return false;

View file

@ -99,7 +99,7 @@ VkResult
anv_xe_physical_device_init_memory_types(struct anv_physical_device *device) anv_xe_physical_device_init_memory_types(struct anv_physical_device *device)
{ {
if (anv_physical_device_has_vram(device)) { if (anv_physical_device_has_vram(device)) {
if (device->info.ver >= 20 && !INTEL_DEBUG(DEBUG_NO_CCS)) { if (device->info.ver >= 20) {
device->memory.types[device->memory.type_count++] = (struct anv_memory_type) { device->memory.types[device->memory.type_count++] = (struct anv_memory_type) {
.propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, .propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
.heapIndex = 0, .heapIndex = 0,
@ -149,13 +149,11 @@ anv_xe_physical_device_init_memory_types(struct anv_physical_device *device)
.heapIndex = 0, .heapIndex = 0,
}; };
} else { } else {
if (device->info.ver >= 20 && !INTEL_DEBUG(DEBUG_NO_CCS)) { device->memory.types[device->memory.type_count++] = (struct anv_memory_type) {
device->memory.types[device->memory.type_count++] = (struct anv_memory_type) { .propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
.propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, .heapIndex = 0,
.heapIndex = 0, .compressed = true,
.compressed = true, };
};
}
device->memory.types[device->memory.type_count++] = (struct anv_memory_type) { device->memory.types[device->memory.type_count++] = (struct anv_memory_type) {
.propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT | .propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT |
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |