]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/xe/vf: Use drm mm instead of drm sa for CCS read/write
authorSatyanarayana K V P <satyanarayana.k.v.p@intel.com>
Wed, 8 Apr 2026 11:01:48 +0000 (11:01 +0000)
committerMatthew Brost <matthew.brost@intel.com>
Tue, 14 Apr 2026 06:45:37 +0000 (23:45 -0700)
commit6c84b493012aeb05dec29c709377bf0e17ac6815
tree4b2bfe816652a3a07b8d42acee41297ec53e24df
parent1ce3229f8f269a245ff3b8c65ffae36b4d6afb93
drm/xe/vf: Use drm mm instead of drm sa for CCS read/write

The suballocator algorithm tracks a hole cursor at the last allocation
and tries to allocate after it. This is optimized for fence-ordered
progress, where older allocations are expected to become reusable first.

In fence-enabled mode, that ordering assumption holds. In fence-disabled
mode, allocations may be freed in arbitrary order, so limiting allocation
to the current hole window can miss valid free space and fail allocations
despite sufficient total space.

Use DRM memory manager instead of sub-allocator to get rid of this issue
as CCS read/write operations do not use fences.

Fixes: 864690cf4dd6 ("drm/xe/vf: Attach and detach CCS copy commands with BO")
Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Maarten Lankhorst <dev@lankhorst.se>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Link: https://patch.msgid.link/20260408110145.1639937-6-satyanarayana.k.v.p@intel.com
drivers/gpu/drm/xe/xe_bo_types.h
drivers/gpu/drm/xe/xe_migrate.c
drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h