From: Lucas De Marchi Date: Wed, 28 Feb 2024 06:10:46 +0000 (-0800) Subject: drm/xe/mocs: Move warn/assertion up X-Git-Tag: microblaze-v6.13~18^2~29^2~668 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=17c20e3b50c7fd03b7583d52f1a8b022dbd0750f;p=linux-2.6-microblaze.git drm/xe/mocs: Move warn/assertion up The warn-once in __init_mocs_table() to make sure there's an index set for unused entries is more a sanity check that should be done as the first thing in that function. The kunit test replicates the same check, so also move it up and turn it into a failure condition for the test. Reviewed-by: Matt Roper Link: https://patchwork.freedesktop.org/patch/msgid/20240228061048.3661978-4-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi --- diff --git a/drivers/gpu/drm/xe/tests/xe_mocs.c b/drivers/gpu/drm/xe/tests/xe_mocs.c index 7c91e01c47a3..9787546e4224 100644 --- a/drivers/gpu/drm/xe/tests/xe_mocs.c +++ b/drivers/gpu/drm/xe/tests/xe_mocs.c @@ -79,11 +79,12 @@ static void read_mocs_table(struct xe_gt *gt, struct kunit *test = xe_cur_kunit(); + KUNIT_EXPECT_TRUE_MSG(test, info->unused_entries_index, + "Unused entries index should have been defined\n"); + ret = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT); KUNIT_ASSERT_EQ_MSG(test, ret, 0, "Forcewake Failed.\n"); mocs_dbg(>_to_xe(gt)->drm, "Global MOCS entries:%d\n", info->n_entries); - drm_WARN_ONCE(&xe->drm, !info->unused_entries_index, - "Unused entries index should have been defined\n"); for (i = 0; i < info->n_entries; i++) { mocs = get_entry_control(info, i); diff --git a/drivers/gpu/drm/xe/xe_mocs.c b/drivers/gpu/drm/xe/xe_mocs.c index bdb755b96323..60ab34fd213f 100644 --- a/drivers/gpu/drm/xe/xe_mocs.c +++ b/drivers/gpu/drm/xe/xe_mocs.c @@ -470,9 +470,11 @@ static void __init_mocs_table(struct xe_gt *gt, unsigned int i; u32 mocs; - mocs_dbg(>_to_xe(gt)->drm, "mocs entries: %d\n", info->n_entries); drm_WARN_ONCE(&xe->drm, !info->unused_entries_index, "Unused entries index should have been defined\n"); + + mocs_dbg(>_to_xe(gt)->drm, "mocs entries: %d\n", info->n_entries); + for (i = 0; i < info->n_entries; i++) { mocs = get_entry_control(info, i);