diff mbox series

drm/i915: ratelimit errors in display engine irq

Message ID 20221215001459.3759580-1-lucas.demarchi@intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915: ratelimit errors in display engine irq | expand

Commit Message

Lucas De Marchi Dec. 15, 2022, 12:14 a.m. UTC
While debugging page table faults it's useful not to kill the machine
with thousands of error mesages. Ratelimit all errors in
gen8_de_irq_handler().

Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
---
 drivers/gpu/drm/i915/i915_irq.c | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

Comments

Jani Nikula Dec. 15, 2022, 8:54 a.m. UTC | #1
On Wed, 14 Dec 2022, Lucas De Marchi <lucas.demarchi@intel.com> wrote:
> While debugging page table faults it's useful not to kill the machine
> with thousands of error mesages. Ratelimit all errors in
> gen8_de_irq_handler().
>
> Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/i915_irq.c | 28 ++++++++++++++--------------
>  1 file changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> index edfe363af838..7a43d1bb6f97 100644
> --- a/drivers/gpu/drm/i915/i915_irq.c
> +++ b/drivers/gpu/drm/i915/i915_irq.c
> @@ -2448,8 +2448,8 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>  			ret = IRQ_HANDLED;
>  			gen8_de_misc_irq_handler(dev_priv, iir);
>  		} else {
> -			drm_err(&dev_priv->drm,
> -				"The master control interrupt lied (DE MISC)!\n");
> +			drm_err_ratelimited(&dev_priv->drm,
> +					    "The master control interrupt lied (DE MISC)!\n");
>  		}
>  	}
>  
> @@ -2460,8 +2460,8 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>  			ret = IRQ_HANDLED;
>  			gen11_hpd_irq_handler(dev_priv, iir);
>  		} else {
> -			drm_err(&dev_priv->drm,
> -				"The master control interrupt lied, (DE HPD)!\n");
> +			drm_err_ratelimited(&dev_priv->drm,
> +					    "The master control interrupt lied, (DE HPD)!\n");
>  		}
>  	}
>  
> @@ -2510,12 +2510,12 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>  			}
>  
>  			if (!found)
> -				drm_err(&dev_priv->drm,
> -					"Unexpected DE Port interrupt\n");
> +				drm_err_ratelimited(&dev_priv->drm,
> +						    "Unexpected DE Port interrupt\n");
>  		}
>  		else
> -			drm_err(&dev_priv->drm,
> -				"The master control interrupt lied (DE PORT)!\n");
> +			drm_err_ratelimited(&dev_priv->drm,
> +					    "The master control interrupt lied (DE PORT)!\n");
>  	}
>  
>  	for_each_pipe(dev_priv, pipe) {
> @@ -2526,8 +2526,8 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>  
>  		iir = intel_uncore_read(&dev_priv->uncore, GEN8_DE_PIPE_IIR(pipe));
>  		if (!iir) {
> -			drm_err(&dev_priv->drm,
> -				"The master control interrupt lied (DE PIPE)!\n");
> +			drm_err_ratelimited(&dev_priv->drm,
> +					    "The master control interrupt lied (DE PIPE)!\n");
>  			continue;
>  		}
>  
> @@ -2548,10 +2548,10 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>  
>  		fault_errors = iir & gen8_de_pipe_fault_mask(dev_priv);
>  		if (fault_errors)
> -			drm_err(&dev_priv->drm,
> -				"Fault errors on pipe %c: 0x%08x\n",
> -				pipe_name(pipe),
> -				fault_errors);
> +			drm_err_ratelimited(&dev_priv->drm,
> +					    "Fault errors on pipe %c: 0x%08x\n",
> +					    pipe_name(pipe),
> +					    fault_errors);
>  	}
>  
>  	if (HAS_PCH_SPLIT(dev_priv) && !HAS_PCH_NOP(dev_priv) &&
Lucas De Marchi Dec. 16, 2022, 12:24 a.m. UTC | #2
On Thu, Dec 15, 2022 at 08:39:47PM +0000, Patchwork wrote:
>== Series Details ==
>
>Series: drm/i915: ratelimit errors in display engine irq (rev2)
>URL   : https://patchwork.freedesktop.org/series/111951/
>State : failure
>
>== Summary ==
>
>CI Bug Log - changes from CI_DRM_12511 -> Patchwork_111951v2
>====================================================
>
>Summary
>-------
>
>  **FAILURE**
>
>  Serious unknown changes coming with Patchwork_111951v2 absolutely need to be
>  verified manually.
>
>  If you think the reported changes have nothing to do with the changes
>  introduced in Patchwork_111951v2, please notify your bug team to allow them
>  to document this new failure mode, which will reduce false positives in CI.
>
>  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/index.html
>
>Participating hosts (40 -> 40)
>------------------------------
>
>  No changes in participating hosts
>
>Possible new issues
>-------------------
>
>  Here are the unknown changes that may have been introduced in Patchwork_111951v2:
>
>### IGT changes ###
>
>#### Possible regressions ####
>
>  * igt@kms_pipe_crc_basic@nonblocking-crc:
>    - fi-kbl-soraka:      NOTRUN -> [INCOMPLETE][1]
>   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/fi-kbl-soraka/igt@kms_pipe_crc_basic@nonblocking-crc.html

Unrelated change

Lucas De Marchi

>
>
>Known issues
>------------
>
>  Here are the changes found in Patchwork_111951v2 that come from known issues:
>
>### IGT changes ###
>
>#### Issues hit ####
>
>  * igt@kms_chamelium@common-hpd-after-suspend:
>    - fi-pnv-d510:        NOTRUN -> [SKIP][2] ([fdo#109271])
>   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/fi-pnv-d510/igt@kms_chamelium@common-hpd-after-suspend.html
>
>
>#### Possible fixes ####
>
>  * igt@gem_exec_suspend@basic-s3@smem:
>    - {bat-rpls-1}:       [DMESG-WARN][3] ([i915#6687]) -> [PASS][4]
>   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12511/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html
>   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html
>
>  * igt@i915_selftest@live@gt_lrc:
>    - {bat-adln-1}:       [INCOMPLETE][5] ([i915#4983] / [i915#7609]) -> [PASS][6]
>   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12511/bat-adln-1/igt@i915_selftest@live@gt_lrc.html
>   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/bat-adln-1/igt@i915_selftest@live@gt_lrc.html
>
>  * igt@i915_selftest@live@slpc:
>    - {bat-rpls-1}:       [DMESG-FAIL][7] ([i915#6367]) -> [PASS][8]
>   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12511/bat-rpls-1/igt@i915_selftest@live@slpc.html
>   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/bat-rpls-1/igt@i915_selftest@live@slpc.html
>
>
>  {name}: This element is suppressed. This means it is ignored when computing
>          the status of the difference (SUCCESS, WARNING, or FAILURE).
>
>  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
>  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
>  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
>  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
>  [i915#6257]: https://gitlab.freedesktop.org/drm/intel/issues/6257
>  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
>  [i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
>  [i915#6997]: https://gitlab.freedesktop.org/drm/intel/issues/6997
>  [i915#7609]: https://gitlab.freedesktop.org/drm/intel/issues/7609
>
>
>Build changes
>-------------
>
>  * Linux: CI_DRM_12511 -> Patchwork_111951v2
>
>  CI-20190529: 20190529
>  CI_DRM_12511: 2f1afd3898412b8487d420921f34fb5340e15e5b @ git://anongit.freedesktop.org/gfx-ci/linux
>  IGT_7095: 0d821bca4e1086c96bb8928a0d24e707396e9373 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
>  Patchwork_111951v2: 2f1afd3898412b8487d420921f34fb5340e15e5b @ git://anongit.freedesktop.org/gfx-ci/linux
>
>
>### Linux commits
>
>f635e7ac7aa5 drm/i915: ratelimit errors in display engine irq
>
>== Logs ==
>
>For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/index.html
Yedireswarapu, SaiX Nandan Dec. 16, 2022, 5:42 a.m. UTC | #3
Hi,

Issue re-reported, https://patchwork.freedesktop.org/series/111951/


Thanks,
Y Sai Nandan


-----Original Message-----
From: De Marchi, Lucas <lucas.demarchi@intel.com> 
Sent: Friday, December 16, 2022 5:55 AM
To: intel-gfx@lists.freedesktop.org
Cc: Yedireswarapu, SaiX Nandan <saix.nandan.yedireswarapu@intel.com>
Subject: Re: ✗ Fi.CI.BAT: failure for drm/i915: ratelimit errors in display engine irq (rev2)

On Thu, Dec 15, 2022 at 08:39:47PM +0000, Patchwork wrote:
>== Series Details ==
>
>Series: drm/i915: ratelimit errors in display engine irq (rev2)
>URL   : https://patchwork.freedesktop.org/series/111951/
>State : failure
>
>== Summary ==
>
>CI Bug Log - changes from CI_DRM_12511 -> Patchwork_111951v2 
>====================================================
>
>Summary
>-------
>
>  **FAILURE**
>
>  Serious unknown changes coming with Patchwork_111951v2 absolutely 
> need to be  verified manually.
>
>  If you think the reported changes have nothing to do with the changes  
> introduced in Patchwork_111951v2, please notify your bug team to allow 
> them  to document this new failure mode, which will reduce false positives in CI.
>
>  External URL: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/index.html
>
>Participating hosts (40 -> 40)
>------------------------------
>
>  No changes in participating hosts
>
>Possible new issues
>-------------------
>
>  Here are the unknown changes that may have been introduced in Patchwork_111951v2:
>
>### IGT changes ###
>
>#### Possible regressions ####
>
>  * igt@kms_pipe_crc_basic@nonblocking-crc:
>    - fi-kbl-soraka:      NOTRUN -> [INCOMPLETE][1]
>   [1]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/fi-kbl-sor
> aka/igt@kms_pipe_crc_basic@nonblocking-crc.html

Unrelated change

Lucas De Marchi

>
>
>Known issues
>------------
>
>  Here are the changes found in Patchwork_111951v2 that come from known issues:
>
>### IGT changes ###
>
>#### Issues hit ####
>
>  * igt@kms_chamelium@common-hpd-after-suspend:
>    - fi-pnv-d510:        NOTRUN -> [SKIP][2] ([fdo#109271])
>   [2]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/fi-pnv-d51
> 0/igt@kms_chamelium@common-hpd-after-suspend.html
>
>
>#### Possible fixes ####
>
>  * igt@gem_exec_suspend@basic-s3@smem:
>    - {bat-rpls-1}:       [DMESG-WARN][3] ([i915#6687]) -> [PASS][4]
>   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12511/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html
>   [4]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/bat-rpls-1
> /igt@gem_exec_suspend@basic-s3@smem.html
>
>  * igt@i915_selftest@live@gt_lrc:
>    - {bat-adln-1}:       [INCOMPLETE][5] ([i915#4983] / [i915#7609]) -> [PASS][6]
>   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12511/bat-adln-1/igt@i915_selftest@live@gt_lrc.html
>   [6]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/bat-adln-1
> /igt@i915_selftest@live@gt_lrc.html
>
>  * igt@i915_selftest@live@slpc:
>    - {bat-rpls-1}:       [DMESG-FAIL][7] ([i915#6367]) -> [PASS][8]
>   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12511/bat-rpls-1/igt@i915_selftest@live@slpc.html
>   [8]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/bat-rpls-1
> /igt@i915_selftest@live@slpc.html
>
>
>  {name}: This element is suppressed. This means it is ignored when computing
>          the status of the difference (SUCCESS, WARNING, or FAILURE).
>
>  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
>  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
>  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
>  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
>  [i915#6257]: https://gitlab.freedesktop.org/drm/intel/issues/6257
>  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
>  [i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
>  [i915#6997]: https://gitlab.freedesktop.org/drm/intel/issues/6997
>  [i915#7609]: https://gitlab.freedesktop.org/drm/intel/issues/7609
>
>
>Build changes
>-------------
>
>  * Linux: CI_DRM_12511 -> Patchwork_111951v2
>
>  CI-20190529: 20190529
>  CI_DRM_12511: 2f1afd3898412b8487d420921f34fb5340e15e5b @ 
> git://anongit.freedesktop.org/gfx-ci/linux
>  IGT_7095: 0d821bca4e1086c96bb8928a0d24e707396e9373 @ 
> https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
>  Patchwork_111951v2: 2f1afd3898412b8487d420921f34fb5340e15e5b @ 
> git://anongit.freedesktop.org/gfx-ci/linux
>
>
>### Linux commits
>
>f635e7ac7aa5 drm/i915: ratelimit errors in display engine irq
>
>== Logs ==
>
>For more details see: 
>https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_111951v2/index.html
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index edfe363af838..7a43d1bb6f97 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -2448,8 +2448,8 @@  gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			ret = IRQ_HANDLED;
 			gen8_de_misc_irq_handler(dev_priv, iir);
 		} else {
-			drm_err(&dev_priv->drm,
-				"The master control interrupt lied (DE MISC)!\n");
+			drm_err_ratelimited(&dev_priv->drm,
+					    "The master control interrupt lied (DE MISC)!\n");
 		}
 	}
 
@@ -2460,8 +2460,8 @@  gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			ret = IRQ_HANDLED;
 			gen11_hpd_irq_handler(dev_priv, iir);
 		} else {
-			drm_err(&dev_priv->drm,
-				"The master control interrupt lied, (DE HPD)!\n");
+			drm_err_ratelimited(&dev_priv->drm,
+					    "The master control interrupt lied, (DE HPD)!\n");
 		}
 	}
 
@@ -2510,12 +2510,12 @@  gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			}
 
 			if (!found)
-				drm_err(&dev_priv->drm,
-					"Unexpected DE Port interrupt\n");
+				drm_err_ratelimited(&dev_priv->drm,
+						    "Unexpected DE Port interrupt\n");
 		}
 		else
-			drm_err(&dev_priv->drm,
-				"The master control interrupt lied (DE PORT)!\n");
+			drm_err_ratelimited(&dev_priv->drm,
+					    "The master control interrupt lied (DE PORT)!\n");
 	}
 
 	for_each_pipe(dev_priv, pipe) {
@@ -2526,8 +2526,8 @@  gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 
 		iir = intel_uncore_read(&dev_priv->uncore, GEN8_DE_PIPE_IIR(pipe));
 		if (!iir) {
-			drm_err(&dev_priv->drm,
-				"The master control interrupt lied (DE PIPE)!\n");
+			drm_err_ratelimited(&dev_priv->drm,
+					    "The master control interrupt lied (DE PIPE)!\n");
 			continue;
 		}
 
@@ -2548,10 +2548,10 @@  gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 
 		fault_errors = iir & gen8_de_pipe_fault_mask(dev_priv);
 		if (fault_errors)
-			drm_err(&dev_priv->drm,
-				"Fault errors on pipe %c: 0x%08x\n",
-				pipe_name(pipe),
-				fault_errors);
+			drm_err_ratelimited(&dev_priv->drm,
+					    "Fault errors on pipe %c: 0x%08x\n",
+					    pipe_name(pipe),
+					    fault_errors);
 	}
 
 	if (HAS_PCH_SPLIT(dev_priv) && !HAS_PCH_NOP(dev_priv) &&