I think we should do both. Any log message that can be triggered 50
times per second in practice should be rate limited. Also, the rate
limiting is probably a candidate for backporting to stable kernels while
the real fix may be not.
PS: See also my other mail about "drm/i915: Detecting Vt-d when running
as guest os"
On 19.10.20 08:43, Joonas Lahtinen wrote:
+ Zhenyu & Zhi,
Should not we instead fix the reason why the errors happen instead of
rate-limiting them?
Regards, Joonas
Quoting Stefan Fritsch (2020-10-16 18:23:40)
If linux is running as a guest and the host is doing igd pass-through
with VT-d enabled, this message is logged dozens of times per second.
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Stefan Fritsch <sf@xxxxxxxxxxx>
---
The i915 driver should also detect VT-d in this case, but that is a
different issue. I have sent a separate mail with subject 'Detecting
Vt-d when running as guest os'.
drivers/gpu/drm/i915/i915_irq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 759f523c6a6b..29096634e697 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -2337,7 +2337,7 @@ 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,
+ drm_err_ratelimited(&dev_priv->drm,
"Fault errors on pipe %c: 0x%08x\n",
pipe_name(pipe),
fault_errors);
--
2.28.0