]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/xe: make change ccs_mode a synchronous action
authorMaciej Patelczyk <maciej.patelczyk@intel.com>
Wed, 11 Dec 2024 11:17:27 +0000 (12:17 +0100)
committerNirmoy Das <nirmoy.das@intel.com>
Mon, 13 Jan 2025 09:44:43 +0000 (10:44 +0100)
If ccs_mode is being modified via
   /sys/class/drm/cardX/device/tileY/gtY/ccs_mode
the asynchronous reset is triggered and the write returns immediately.

With that some test receive false information about number of CCS engines
or even fail if they proceed without delay after changing the ccs_mode.

Changing the ccs_mode change from async to sync to prevent failures in
tests.

Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Fixes: f3bc5bb4d53d ("drm/xe: Allow userspace to configure CCS mode")
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241211111727.1481476-3-maciej.patelczyk@intel.com
Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
drivers/gpu/drm/xe/xe_gt_ccs_mode.c

index b6adfb9f203069e5d3bd748ecdef909d6c60f883..50fffc9ebf62a1d0a051bbfd8698d4ec6de4d93e 100644 (file)
@@ -150,7 +150,7 @@ ccs_mode_store(struct device *kdev, struct device_attribute *attr,
                xe_gt_info(gt, "Setting compute mode to %d\n", num_engines);
                gt->ccs_mode = num_engines;
                xe_gt_record_user_engines(gt);
-               xe_gt_reset_async(gt);
+               xe_gt_reset(gt);
        }
 
        mutex_unlock(&xe->drm.filelist_mutex);