[PATCH v10 1/4] drm: Introduce device wedged event

Raag Jadav raag.jadav at intel.com
Fri Dec 13 13:51:41 UTC 2024


On Thu, Dec 12, 2024 at 03:31:01PM -0300, André Almeida wrote:
> Hi Raag,
> 
> Thank you for your patch.
> 
> Em 28/11/2024 12:37, Raag Jadav escreveu:
> 
> [...]
> 
> > +int drm_dev_wedged_event(struct drm_device *dev, unsigned long method)
> > +{
> > +	const char *recovery = NULL;
> > +	unsigned int len, opt;
> > +	/* Event string length up to 28+ characters with available methods */
> > +	char event_string[32];
> > +	char *envp[] = { event_string, NULL };
> > +
> > +	len = scnprintf(event_string, sizeof(event_string), "%s", "WEDGED=");
> > +
> > +	for_each_set_bit(opt, &method, BITS_PER_TYPE(method)) {
> > +		recovery = drm_get_wedge_recovery(opt);
> > +		if (drm_WARN(dev, !recovery, "device wedged, invalid recovery method %u\n", opt))
> > +			break;
> > +
> > +		len += scnprintf(event_string + len, sizeof(event_string), "%s,", recovery);
> > +	}
> > +
> > +	if (recovery)
> > +		/* Get rid of trailing comma */
> > +		event_string[len - 1] = '\0';
> > +	else
> > +		/* 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, needs recovery\n");
> 
> As documented in the commit message "No explicit device recovery is expected
> from the consumer in this case", I think this should be like this:
> 
> if (method != DRM_WEDGE_RECOVERY_NONE)
>     drm_info(dev, "device wedged, needs recovery\n");
> 
> and maybe a note like this:
> 
> else
>     drm_info(dev, "device reseted, but managed to recover\n");

Or perhaps

	drm_info(dev, "device wedged, but recovered through reset\n");

> Either way, this patch is:
> 
> Reviewed-by: André Almeida <andrealmeid at igalia.com>

Thanks for the review.

Raag


More information about the dri-devel mailing list