mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 11:38:05 +02:00
anv: Properly allocate aux-tracking space for CCS_E
add_aux_state_tracking_buffer() actually checks the aux usage when determining how many dwords to allocate for state tracking. Move the function call to the point after the CCS_E aux usage is assigned. Fixes:de3be61801("anv/cmd_buffer: Rework aux tracking") Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commitd0fcc2dd50)
This commit is contained in:
parent
aa51bd5aa1
commit
d8847c2f28
2 changed files with 5 additions and 3 deletions
|
|
@ -468,9 +468,6 @@ make_surface(const struct anv_device *dev,
|
|||
return VK_SUCCESS;
|
||||
}
|
||||
|
||||
add_surface(image, &image->planes[plane].aux_surface, plane);
|
||||
add_aux_state_tracking_buffer(image, plane, dev);
|
||||
|
||||
/* For images created without MUTABLE_FORMAT_BIT set, we know that
|
||||
* they will always be used with the original format. In
|
||||
* particular, they will always be used with a format that
|
||||
|
|
@ -483,6 +480,9 @@ make_surface(const struct anv_device *dev,
|
|||
image->ccs_e_compatible) {
|
||||
image->planes[plane].aux_usage = ISL_AUX_USAGE_CCS_E;
|
||||
}
|
||||
|
||||
add_surface(image, &image->planes[plane].aux_surface, plane);
|
||||
add_aux_state_tracking_buffer(image, plane, dev);
|
||||
}
|
||||
}
|
||||
} else if ((aspect & VK_IMAGE_ASPECT_ANY_COLOR_BIT_ANV) && image->samples > 1) {
|
||||
|
|
|
|||
|
|
@ -3276,6 +3276,8 @@ anv_image_get_compression_state_addr(const struct anv_device *device,
|
|||
}
|
||||
addr.offset += array_layer * 4;
|
||||
|
||||
assert(addr.offset <
|
||||
image->planes[plane].address.offset + image->planes[plane].size);
|
||||
return addr;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue