[PATCH] drm/xe/mocs: Check that MOCS table.ops is assigned

Matt Roper matthew.d.roper at intel.com
Wed Jun 26 21:12:57 UTC 2024


When MOCS debugfs dumping was added in commit 9fbd0adbcbe8
("drm/xe/mocs: Add debugfs node to dump mocs"), a sanity check was added
to xe_mocs_dump() to ensure table.ops->dump is not a NULL pointer.  The
more common programmer mistake when adding MOCS enablement for new
platforms is to simply forget to assign anything to table.ops
altogether.  Extend the check to also cover a NULL table.ops and add a
WARN() so that CI will help us catch these mistakes when new platforms
are enabled in the future.

Signed-off-by: Matt Roper <matthew.d.roper at intel.com>
---
 drivers/gpu/drm/xe/xe_mocs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_mocs.c b/drivers/gpu/drm/xe/xe_mocs.c
index de3f2d3f1b04..d43900d351f1 100644
--- a/drivers/gpu/drm/xe/xe_mocs.c
+++ b/drivers/gpu/drm/xe/xe_mocs.c
@@ -779,7 +779,7 @@ void xe_mocs_dump(struct xe_gt *gt, struct drm_printer *p)
 
 	flags = get_mocs_settings(xe, &table);
 
-	if (!table.ops->dump)
+	if (xe_gt_WARN_ON(gt, !table.ops || !table.ops->dump))
 		return;
 
 	xe_pm_runtime_get_noresume(xe);
-- 
2.45.0



More information about the Intel-xe mailing list