On Wed, Jul 22, 2026 at 03:11:37PM +0530, Riana Tauro wrote:
> When an interrupt is received for correctable errors indicating that error
> counter has crossed its threshold, read the current counter value and
> deliver a drm-ras error-event to userspace for each affected component.
> 
> Also send drm-ras error-event to userspace for uncorrectable errors on
> receiving an AER.
> 
> To avoid sending duplicate events when the same component appears multiple
> times in the response, Send the error-event once per component.

...

> @@ -425,6 +487,12 @@ enum xe_ras_recovery_action xe_ras_process_errors(struct 
> xe_device *xe)
>                       xe_info(xe, "[RAS]: %s %s detected\n", 
> comp_to_str(component),
>                               sev_to_str(severity));

Similar to threshold crossed case, we should probably have a BUILD_BUG_ON()
against XE_RAS_NUM_ERROR_ARR.

Reviewed-by: Raag Jadav <[email protected]>

> +                     /* Send event once per component */
> +                     if (!(sent & BIT(component))) {
> +                             sent |= BIT(component);
> +                             ras_send_error_event(xe, severity, component);
> +                     }
> +
>                       switch (component) {
>                       case XE_RAS_COMP_CORE_COMPUTE:
>                               action = handle_core_compute_errors(arr);
> -- 
> 2.47.1
> 

Reply via email to