[PATCH 3/4] drm/xe/vf: Disallow setting wedged_mode=2

Rodrigo Vivi rodrigo.vivi at intel.com
Fri Apr 25 14:21:05 UTC 2025


On Thu, Apr 24, 2025 at 04:30:42PM +0200, Lukasz Laguna wrote:
> In wedged_mode=2, engine resets need to be disabled, which requires
> changing the GuC reset policy. VFs are not permitted to do that.
> 
> Signed-off-by: Lukasz Laguna <lukasz.laguna at intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi at intel.com>

> ---
>  drivers/gpu/drm/xe/xe_debugfs.c | 3 +++
>  drivers/gpu/drm/xe/xe_device.c  | 5 ++++-
>  2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_debugfs.c b/drivers/gpu/drm/xe/xe_debugfs.c
> index 2e6d8744003b..369bb2103e4c 100644
> --- a/drivers/gpu/drm/xe/xe_debugfs.c
> +++ b/drivers/gpu/drm/xe/xe_debugfs.c
> @@ -169,6 +169,9 @@ static ssize_t wedged_mode_set(struct file *f, const char __user *ubuf,
>  	if (xe->wedged.mode == wedged_mode)
>  		return size;
>  
> +	if (wedged_mode == 2 && IS_SRIOV_VF(xe))
> +		return -EPERM;
> +
>  	xe_pm_runtime_get(xe);
>  	for_each_gt(gt, xe, id) {
>  		ret = xe_guc_ads_scheduler_policy_toggle_reset(&gt->uc.guc.ads);
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index d2de6936cc20..13430538f861 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -731,9 +731,12 @@ int xe_device_probe_early(struct xe_device *xe)
>  	if (err)
>  		return err;
>  
> +	xe->wedged.mode = 1; /* default */
> +
>  	if (xe_modparam.wedged_mode > 2) {
>  		drm_dbg(&xe->drm, "Used wedged_mode value is invalid. Setting default (1)\n");
> -		xe->wedged.mode = 1; /* default */
> +	} else if (xe_modparam.wedged_mode == 2 && IS_SRIOV_VF(xe)) {
> +		drm_dbg(&xe->drm, "Can't set wedged_mode=2 when running as VF. Setting default (1)\n");
>  	} else {
>  		xe->wedged.mode = xe_modparam.wedged_mode;
>  	}
> -- 
> 2.40.0
> 


More information about the Intel-xe mailing list