drm/xe: Report TLB timeout using GT oriented functions
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Mon, 18 Dec 2023 19:06:21 +0000 (20:06 +0100)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 21 Dec 2023 21:31:29 +0000 (16:31 -0500)
We track TLB invalidation seqno per GT and we have GT oriented
message helpers, so it's better to use GT oriented log functions.

Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://lore.kernel.org/r/20231218190629.502-3-michal.wajdeczko@intel.com
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c

index 7eef23a00d77ee679b011d8e4a0dc2b3ed1bb360..e3a4131ebb587900eec32b2f46e146d914390336 100644 (file)
@@ -8,6 +8,7 @@
 #include "abi/guc_actions_abi.h"
 #include "xe_device.h"
 #include "xe_gt.h"
+#include "xe_gt_printk.h"
 #include "xe_guc.h"
 #include "xe_guc_ct.h"
 #include "xe_trace.h"
@@ -30,8 +31,8 @@ static void xe_gt_tlb_fence_timeout(struct work_struct *work)
                        break;
 
                trace_xe_gt_tlb_invalidation_fence_timeout(fence);
-               drm_err(&gt_to_xe(gt)->drm, "gt%d: TLB invalidation fence timeout, seqno=%d recv=%d",
-                       gt->info.id, fence->seqno, gt->tlb_invalidation.seqno_recv);
+               xe_gt_err(gt, "TLB invalidation fence timeout, seqno=%d recv=%d",
+                         fence->seqno, gt->tlb_invalidation.seqno_recv);
 
                list_del(&fence->link);
                fence->base.error = -ETIME;
@@ -312,9 +313,7 @@ int xe_gt_tlb_invalidation_vma(struct xe_gt *gt,
  */
 int xe_gt_tlb_invalidation_wait(struct xe_gt *gt, int seqno)
 {
-       struct xe_device *xe = gt_to_xe(gt);
        struct xe_guc *guc = &gt->uc.guc;
-       struct drm_printer p = drm_err_printer(__func__);
        int ret;
 
        /*
@@ -325,8 +324,10 @@ int xe_gt_tlb_invalidation_wait(struct xe_gt *gt, int seqno)
                                 tlb_invalidation_seqno_past(gt, seqno),
                                 TLB_TIMEOUT);
        if (!ret) {
-               drm_err(&xe->drm, "gt%d: TLB invalidation time'd out, seqno=%d, recv=%d\n",
-                       gt->info.id, seqno, gt->tlb_invalidation.seqno_recv);
+               struct drm_printer p = xe_gt_err_printer(gt);
+
+               xe_gt_err(gt, "TLB invalidation time'd out, seqno=%d, recv=%d\n",
+                         seqno, gt->tlb_invalidation.seqno_recv);
                xe_guc_ct_print(&guc->ct, &p, true);
                return -ETIME;
        }