To support VF Migration, it is necessary to do fixups to any non-virtualized resources. These fixups need to be applied within VM, on the KMD working with VF.
This series adds two fixup functions to the recovery worker: * for fixing drm_mm nodes which represent GGTT allocations * for fixing content of outgoing CTB buffer v2: Fixed missing include, made checkpatch happy v3: Moved some functs to xe_ggtt.c; moved shift computation to just after querying; improved documentation; switched some warns to asserts; skipping fixups when GGTT shift eq 0; iterating through tiles rather than gts; fixes in log messages v4: Updated kerneldocs, removed unused funct, properly allocate balloning nodes if non existent, removed inline keywords, enums for offsets in CTB messages, less error messages, if return unused then made functs void v5: Removed drm_mm change, but added VF init modifications. These then allowed to re-use ballooning functions during ggtt node fixing. Tomasz Lis (4): drm/xe/vf: Divide ballooning into allocation and insertion drm/xe/sriov: Shifting GGTT area post migration drm/xe/guc: Introduce enum with offsets for multi-LRC register H2G drm/xe/vf: Fixup CTB send buffer messages after migration drivers/gpu/drm/xe/abi/guc_actions_abi.h | 7 + drivers/gpu/drm/xe/xe_ggtt.c | 40 +++++- drivers/gpu/drm/xe/xe_ggtt.h | 3 + drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 148 +++++++++++++++++++--- drivers/gpu/drm/xe/xe_gt_sriov_vf.h | 1 + drivers/gpu/drm/xe/xe_gt_sriov_vf_types.h | 2 + drivers/gpu/drm/xe/xe_guc_ct.c | 142 +++++++++++++++++++++ drivers/gpu/drm/xe/xe_guc_ct.h | 2 + drivers/gpu/drm/xe/xe_guc_submit.c | 4 + drivers/gpu/drm/xe/xe_sriov_vf.c | 42 ++++++ 10 files changed, 369 insertions(+), 22 deletions(-) -- 2.25.1