[PATCH v1] drm/xe/vf: Fail migration recovery if fixups needed but platform not supported
Tomasz Lis
tomasz.lis at intel.com
Mon May 12 23:06:14 UTC 2025
The post-migration recovery needs to be fully implemented for a
specific platform in order to make continuation of workloads
possible.
New platforms introduce changes which affect the recovery procedure,
and without a clear verification of support this leads to errors
with no straight forward error message explaining the cause.
This patch fixes that issue - it introduces a message to be logged
when the current driver is known to not support the current platform.
Wedging the driver immediately also decreases the amount of
additional errors which would come afterwards if the driver continued
operation.
Signed-off-by: Tomasz Lis <tomasz.lis at intel.com>
---
drivers/gpu/drm/xe/xe_sriov_vf.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf.c b/drivers/gpu/drm/xe/xe_sriov_vf.c
index 2674fa948fda..f21f98f5d25f 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf.c
@@ -224,6 +224,11 @@ static void vf_post_migration_notify_resfix_done(struct xe_device *xe)
drm_dbg(&xe->drm, "another recovery imminent, skipping notifications\n");
}
+static bool fixups_supported(struct xe_device *xe)
+{
+ return false;
+}
+
static void vf_post_migration_recovery(struct xe_device *xe)
{
bool need_fixups;
@@ -243,6 +248,11 @@ static void vf_post_migration_recovery(struct xe_device *xe)
vf_post_migration_fixup_ctb(xe);
vf_post_migration_notify_resfix_done(xe);
+ if (need_fixups && !fixups_supported(xe)) {
+ drm_err(&xe->drm, "migration recovery not supported by this module version\n");
+ err = -ENOTRECOVERABLE;
+ goto fail;
+ }
xe_pm_runtime_put(xe);
drm_notice(&xe->drm, "migration recovery ended\n");
return;
--
2.25.1
More information about the Intel-xe
mailing list