[PATCH 4/4] drm/xe/pf: Allow wedged_mode=2 only in debug config

Michal Wajdeczko michal.wajdeczko at intel.com
Mon May 12 08:29:06 UTC 2025



On 24.04.2025 16:30, Lukasz Laguna wrote:
> The GuC reset policy is global, so changing it on PF can impact running
> VFs. To avoid unintended side effects, setting wedged_mode=2 on the PF
> is restricted to debug builds only.
> 
> Signed-off-by: Lukasz Laguna <lukasz.laguna at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_debugfs.c | 3 ++-
>  drivers/gpu/drm/xe/xe_device.c  | 7 +++++--
>  2 files changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_debugfs.c b/drivers/gpu/drm/xe/xe_debugfs.c
> index 369bb2103e4c..79a879d92845 100644
> --- a/drivers/gpu/drm/xe/xe_debugfs.c
> +++ b/drivers/gpu/drm/xe/xe_debugfs.c
> @@ -169,7 +169,8 @@ 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))
> +	if (wedged_mode == 2 &&
> +	    (IS_SRIOV_VF(xe) || (IS_SRIOV_PF(xe) && !IS_ENABLED(CONFIG_DRM_XE_DEBUG))))
>  		return -EPERM;
>  
>  	xe_pm_runtime_get(xe);
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index 13430538f861..b42af557acb8 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -735,8 +735,11 @@ int xe_device_probe_early(struct xe_device *xe)
>  
>  	if (xe_modparam.wedged_mode > 2) {
>  		drm_dbg(&xe->drm, "Used wedged_mode value is invalid. Setting default (1)\n");
> -	} 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 if (xe_modparam.wedged_mode == 2) {
> +		if  (IS_SRIOV_VF(xe))
> +			drm_dbg(&xe->drm, "Can't set wedged_mode=2 when running as VF. Setting default (1)\n");
> +		else if (IS_SRIOV_PF(xe) && !IS_ENABLED(CONFIG_DRM_XE_DEBUG))
> +			drm_dbg(&xe->drm, "Can't set wedged_mode=2 when running as PF in non-debug config. Setting default (1)\n");

allowing wedged_mode=2 in PF mode is just an exception/hack, official
statement should say "unsupported" like in VF mode

>  	} else {
>  		xe->wedged.mode = xe_modparam.wedged_mode;
>  	}



More information about the Intel-xe mailing list