Skip to content

Commit f6c1345

Browse files
committed
drm/xe: Avoid PM wake reference during VF migration
Virtual Functions (VFs) do not use runtime PM. Avoid taking PM references during VF migration, as lockdep may get confused—VF migration occurs in the reclaim path, and waking a PM reference can trigger memory allocation warnings. Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com> Link: https://lore.kernel.org/r/20251022005538.828980-4-matthew.brost@intel.com
1 parent 480b358 commit f6c1345

1 file changed

Lines changed: 0 additions & 5 deletions

File tree

drivers/gpu/drm/xe/xe_gt_sriov_vf.c

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
#include "xe_lrc.h"
3232
#include "xe_memirq.h"
3333
#include "xe_mmio.h"
34-
#include "xe_pm.h"
3534
#include "xe_sriov.h"
3635
#include "xe_sriov_vf.h"
3736
#include "xe_sriov_vf_ccs.h"
@@ -1218,7 +1217,6 @@ static void vf_post_migration_recovery(struct xe_gt *gt)
12181217

12191218
xe_gt_sriov_dbg(gt, "migration recovery in progress\n");
12201219

1221-
xe_pm_runtime_get(xe);
12221220
retry = vf_post_migration_shutdown(gt);
12231221
if (retry)
12241222
goto queue;
@@ -1241,20 +1239,17 @@ static void vf_post_migration_recovery(struct xe_gt *gt)
12411239

12421240
vf_post_migration_kickstart(gt);
12431241

1244-
xe_pm_runtime_put(xe);
12451242
xe_gt_sriov_notice(gt, "migration recovery ended\n");
12461243
return;
12471244
fail:
12481245
vf_post_migration_abort(gt);
1249-
xe_pm_runtime_put(xe);
12501246
xe_gt_sriov_err(gt, "migration recovery failed (%pe)\n", ERR_PTR(err));
12511247
xe_device_declare_wedged(xe);
12521248
return;
12531249

12541250
queue:
12551251
xe_gt_sriov_info(gt, "Re-queuing migration recovery\n");
12561252
queue_work(gt->ordered_wq, &gt->sriov.vf.migration.worker);
1257-
xe_pm_runtime_put(xe);
12581253
}
12591254

12601255
static void migration_worker_func(struct work_struct *w)

0 commit comments

Comments
 (0)