Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] drm/xe/vf: Skip attempt to start GuC PC if VF
@ 2024-06-22  9:42 Michal Wajdeczko
  2024-06-22  9:48 ` ✓ CI.Patch_applied: success for drm/xe/vf: Skip attempt to start GuC PC if VF (rev2) Patchwork
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2024-06-22  9:42 UTC (permalink / raw)
  To: intel-xe; +Cc: Michal Wajdeczko, Vinay Belgaumkar, Matthew Brost

We have already marked the GuC PC feature as not applicable for
VF devices, but we missed the fact that there may be still some
privileged activities performed by this component, who does much
more than its name suggests.

Explicitly skip xe_guc_pc_start() if running as a VF driver and
use a GT oriented message to report any error.

v2: also skip xe_guc_pc_stop (Vinay)

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/xe/xe_guc.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
index 172b65a50e31..eb655cee19f7 100644
--- a/drivers/gpu/drm/xe/xe_guc.c
+++ b/drivers/gpu/drm/xe/xe_guc.c
@@ -1113,7 +1113,13 @@ void xe_guc_reset_wait(struct xe_guc *guc)
 
 void xe_guc_stop_prepare(struct xe_guc *guc)
 {
-	XE_WARN_ON(xe_guc_pc_stop(&guc->pc));
+	if (!IS_SRIOV_VF(guc_to_xe(guc))) {
+		int err;
+
+		err = xe_guc_pc_stop(&guc->pc);
+		xe_gt_WARN(guc_to_gt(guc), err, "Failed to stop GuC PC: %pe\n",
+			   ERR_PTR(err));
+	}
 }
 
 void xe_guc_stop(struct xe_guc *guc)
@@ -1125,10 +1131,13 @@ void xe_guc_stop(struct xe_guc *guc)
 
 int xe_guc_start(struct xe_guc *guc)
 {
-	int ret;
+	if (!IS_SRIOV_VF(guc_to_xe(guc))) {
+		int err;
 
-	ret = xe_guc_pc_start(&guc->pc);
-	XE_WARN_ON(ret);
+		err = xe_guc_pc_start(&guc->pc);
+		xe_gt_WARN(guc_to_gt(guc), err, "Failed to start GuC PC: %pe\n",
+			   ERR_PTR(err));
+	}
 
 	return xe_guc_submit_start(guc);
 }
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2024-06-25 18:01 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-22  9:42 [PATCH v2] drm/xe/vf: Skip attempt to start GuC PC if VF Michal Wajdeczko
2024-06-22  9:48 ` ✓ CI.Patch_applied: success for drm/xe/vf: Skip attempt to start GuC PC if VF (rev2) Patchwork
2024-06-22  9:48 ` ✓ CI.checkpatch: " Patchwork
2024-06-22  9:49 ` ✓ CI.KUnit: " Patchwork
2024-06-22 10:01 ` ✓ CI.Build: " Patchwork
2024-06-22 10:03 ` ✗ CI.Hooks: failure " Patchwork
2024-06-22 10:05 ` ✓ CI.checksparse: success " Patchwork
2024-06-22 10:28 ` ✓ CI.BAT: " Patchwork
2024-06-22 11:38 ` ✓ CI.FULL: " Patchwork
2024-06-25 18:01 ` [PATCH v2] drm/xe/vf: Skip attempt to start GuC PC if VF Belgaumkar, Vinay

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox