On 10/20/26 04:21, Raag Jadav wrote:
> Currently, drm_dev_wedged_event() logs a basic message of device being
> wedged, but doesn't print the recovery method used by the caller. Log it
> for easier bug report analysis.
> 
> While at it, as device wedging is a catastrophic event for the cases that
> do need recovery, distinguish them and raise their log level to drm_warn().
> 
> Signed-off-by: Raag Jadav <[email protected]>
> ---
> v2: Distinguish between recovery and no recovery cases (Christian, Rodrigo)
> ---
>  drivers/gpu/drm/drm_drv.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
> index cb53baa70995..7f8abb72f548 100644
> --- a/drivers/gpu/drm/drm_drv.c
> +++ b/drivers/gpu/drm/drm_drv.c
> @@ -598,8 +598,10 @@ int drm_dev_wedged_event(struct drm_device *dev, 
> unsigned long method,
>               /* Caller is unsure about recovery, do the best we can at this 
> point. */
>               snprintf(event_string, sizeof(event_string), "%s", 
> "WEDGED=unknown");
>  
> -     drm_info(dev, "device wedged, %s\n", method == DRM_WEDGE_RECOVERY_NONE ?
> -              "but no recovery needed" : "needs recovery");
> +     if (method == DRM_WEDGE_RECOVERY_NONE)
> +             drm_info(dev, "device wedged, but no recovery needed\n");
> +     else
> +             drm_warn(dev, "device wedged with method %#lx, needs 
> recovery\n", method);

That is still not ok.

Again device wedging is a perfectly normal part of operation and clearly 
doesn't deserves a warning.

As far as I can see userspace can spam the log with warnings by just submitting 
shaders with an endless loop in it.

Regards,
Christian.

>  
>       if (info && (info->comm[0] != '\0') && (info->pid >= 0)) {
>               snprintf(pid_string, sizeof(pid_string), "PID=%u", info->pid);

Reply via email to