diff mbox series

drm/i915: Fix pipeDMC and ATS fault handling

Message ID 20250224173017.29500-1-ville.syrjala@linux.intel.com (mailing list archive)
State New
Headers show
Series drm/i915: Fix pipeDMC and ATS fault handling | expand

Commit Message

Ville Syrjälä Feb. 24, 2025, 5:30 p.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

The fault handler is supposed to return true when it
handles the fault. The pipeDMC and ATS handlers are
returning false instead which results in the
"unreported faults" WARN triggering when it shouldn't.

Fixes: f13011a79999 ("drm/i915: Pimp display fault reporting")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/display/intel_display_irq.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Govindapillai, Vinod Feb. 26, 2025, 3:30 p.m. UTC | #1
On Mon, 2025-02-24 at 19:30 +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> The fault handler is supposed to return true when it
> handles the fault. The pipeDMC and ATS handlers are
> returning false instead which results in the
> "unreported faults" WARN triggering when it shouldn't.
> 
> Fixes: f13011a79999 ("drm/i915: Pimp display fault reporting")
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display_irq.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 

Reviewed-by: Vinod Govindapillai <vinod.govindapillai@intel.com>


> diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c
> b/drivers/gpu/drm/i915/display/intel_display_irq.c
> index 99fb7fc7be39..aa23bb817805 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_irq.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_irq.c
> @@ -1101,7 +1101,7 @@ static bool handle_plane_ats_fault(struct intel_crtc *crtc, enum plane_id
> plane_
>  			    "[CRTC:%d:%s] PLANE ATS fault\n",
>  			    crtc->base.base.id, crtc->base.name);
>  
> -	return false;
> +	return true;
>  }
>  
>  static bool handle_pipedmc_ats_fault(struct intel_crtc *crtc, enum plane_id plane_id)
> @@ -1112,7 +1112,7 @@ static bool handle_pipedmc_ats_fault(struct intel_crtc *crtc, enum plane_id
> plan
>  			    "[CRTC:%d:%s] PIPEDMC ATS fault\n",
>  			    crtc->base.base.id, crtc->base.name);
>  
> -	return false;
> +	return true;
>  }
>  
>  static bool handle_pipedmc_fault(struct intel_crtc *crtc, enum plane_id plane_id)
> @@ -1123,7 +1123,7 @@ static bool handle_pipedmc_fault(struct intel_crtc *crtc, enum plane_id
> plane_id
>  			    "[CRTC:%d:%s] PIPEDMC fault\n",
>  			    crtc->base.base.id, crtc->base.name);
>  
> -	return false;
> +	return true;
>  }
>  
>  static const struct pipe_fault_handler mtl_pipe_fault_handlers[] = {
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c b/drivers/gpu/drm/i915/display/intel_display_irq.c
index 99fb7fc7be39..aa23bb817805 100644
--- a/drivers/gpu/drm/i915/display/intel_display_irq.c
+++ b/drivers/gpu/drm/i915/display/intel_display_irq.c
@@ -1101,7 +1101,7 @@  static bool handle_plane_ats_fault(struct intel_crtc *crtc, enum plane_id plane_
 			    "[CRTC:%d:%s] PLANE ATS fault\n",
 			    crtc->base.base.id, crtc->base.name);
 
-	return false;
+	return true;
 }
 
 static bool handle_pipedmc_ats_fault(struct intel_crtc *crtc, enum plane_id plane_id)
@@ -1112,7 +1112,7 @@  static bool handle_pipedmc_ats_fault(struct intel_crtc *crtc, enum plane_id plan
 			    "[CRTC:%d:%s] PIPEDMC ATS fault\n",
 			    crtc->base.base.id, crtc->base.name);
 
-	return false;
+	return true;
 }
 
 static bool handle_pipedmc_fault(struct intel_crtc *crtc, enum plane_id plane_id)
@@ -1123,7 +1123,7 @@  static bool handle_pipedmc_fault(struct intel_crtc *crtc, enum plane_id plane_id
 			    "[CRTC:%d:%s] PIPEDMC fault\n",
 			    crtc->base.base.id, crtc->base.name);
 
-	return false;
+	return true;
 }
 
 static const struct pipe_fault_handler mtl_pipe_fault_handlers[] = {