[PATCH] drm/xe/migrate: Future-proof compressed PAT check
Lucas De Marchi
lucas.demarchi at intel.com
Fri Jul 26 17:40:22 UTC 2024
On Fri, Jul 26, 2024 at 10:26:00AM GMT, Jahagirdar, Akshata wrote:
>
>On 7/26/2024 10:17 AM, Matt Roper wrote:
>>Although all current Xe2 platforms support FlatCCS, we probably
>>shouldn't assume that will be universally true forever. In the past
>>we've had platforms like PVC that didn't support compression, and the
>>same could show up again at some point in the future. Future-proof the
>>migration code by adding an explicit check for FlatCCS support to the
>>condition that decides whether to use a compressed PAT index for
>>migration.
>>
>>While we're at it, we can drop the IS_DGFX check since it's redundant
>>with the src_is_vram check (only dGPUs have VRAM).
>>
>>Cc: Akshata Jahagirdar<akshata.jahagirdar at intel.com>
>>Cc: Lucas De Marchi<lucas.demarchi at intel.com>
>>Signed-off-by: Matt Roper<matthew.d.roper at intel.com>
>>---
>> drivers/gpu/drm/xe/xe_migrate.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>>diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c
>>index c007f68503d4..6f24aaf58252 100644
>>--- a/drivers/gpu/drm/xe/xe_migrate.c
>>+++ b/drivers/gpu/drm/xe/xe_migrate.c
>>@@ -781,7 +781,8 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
>> bool copy_ccs = xe_device_has_flat_ccs(xe) &&
>> xe_bo_needs_ccs_pages(src_bo) && xe_bo_needs_ccs_pages(dst_bo);
>> bool copy_system_ccs = copy_ccs && (!src_is_vram || !dst_is_vram);
>>- bool use_comp_pat = GRAPHICS_VER(xe) >= 20 && IS_DGFX(xe) && src_is_vram && !dst_is_vram;
>>+ bool use_comp_pat = xe_device_has_flat_ccs(xe) &&
>>+ GRAPHICS_VER(xe) >= 20 && src_is_vram && !dst_is_vram;
I was thinking we'd drop the GRAPHICS_VER() check too... but yeah, for
platforms with flatccs before xe2 (DG2) we didn't have the bit in the
pte.
Reviewed-by: Lucas De Marchi <lucas.demarchi at intel.com>
thanks
Lucas De Marchi
>LGTM.
>
>Reviewed-by: Akshata Jahagirdar <akshata.jahagirdar at intel.com>
>
>> /* Copying CCS between two different BOs is not supported yet. */
>> if (XE_WARN_ON(copy_ccs && src_bo != dst_bo))
More information about the Intel-xe
mailing list