summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/xe/xe_guc_ct.h
diff options
context:
space:
mode:
authorMatthew Brost <matthew.brost@intel.com>2024-01-02 12:35:38 -0800
committerMatthew Brost <matthew.brost@intel.com>2024-01-09 06:56:46 -0800
commit5030e16140b655ba00217d47680e697480ac3587 (patch)
tree78c783651a9aaea8087855582fd2d7c7dc6c65f8 /drivers/gpu/drm/xe/xe_guc_ct.h
parent97d0047cbb17318431eaf37dfe1a6855539340f9 (diff)
drm/xe/guc: Only take actions in CT irq handler if CTs are enabled
Protect entire IRQ handler by CT being enabled rather than just G2H handler. v2: Return on not enabled in CT irq handler (Michal) Suggested-by: Michal Wajdeczko <michal.wajdeczko@intel.com> Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Diffstat (limited to 'drivers/gpu/drm/xe/xe_guc_ct.h')
-rw-r--r--drivers/gpu/drm/xe/xe_guc_ct.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/xe/xe_guc_ct.h b/drivers/gpu/drm/xe/xe_guc_ct.h
index f15f8a4857e0..9ecb67db8ec4 100644
--- a/drivers/gpu/drm/xe/xe_guc_ct.h
+++ b/drivers/gpu/drm/xe/xe_guc_ct.h
@@ -24,9 +24,11 @@ void xe_guc_ct_print(struct xe_guc_ct *ct, struct drm_printer *p, bool atomic);
static inline void xe_guc_ct_irq_handler(struct xe_guc_ct *ct)
{
+ if (!ct->enabled)
+ return;
+
wake_up_all(&ct->wq);
- if (ct->enabled)
- queue_work(system_unbound_wq, &ct->g2h_worker);
+ queue_work(system_unbound_wq, &ct->g2h_worker);
xe_guc_ct_fast_path(ct);
}