drm/i915: Double check we didn't miss an unclaimed register access

Currently, if the user has enabled mmio-debug around each register
access, we presume that we have then checked them all. However, it is
still possible through omission (raw register access) or external
interaction that the unclaimed access was not highlighted.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180904111732.24266-1-chris@chris-wilson.co.uk
This commit is contained in:
Chris Wilson 2018-09-04 12:17:32 +01:00
parent 9f9d594d95
commit 7ef4ac6ed9
1 changed files with 7 additions and 6 deletions

View File

@ -2283,15 +2283,16 @@ bool intel_uncore_unclaimed_mmio(struct drm_i915_private *dev_priv)
bool bool
intel_uncore_arm_unclaimed_mmio_detection(struct drm_i915_private *dev_priv) intel_uncore_arm_unclaimed_mmio_detection(struct drm_i915_private *dev_priv)
{ {
if (unlikely(i915_modparams.mmio_debug || if (unlikely(dev_priv->uncore.unclaimed_mmio_check <= 0))
dev_priv->uncore.unclaimed_mmio_check <= 0))
return false; return false;
if (unlikely(intel_uncore_unclaimed_mmio(dev_priv))) { if (unlikely(intel_uncore_unclaimed_mmio(dev_priv))) {
if (!i915_modparams.mmio_debug) {
DRM_DEBUG("Unclaimed register detected, " DRM_DEBUG("Unclaimed register detected, "
"enabling oneshot unclaimed register reporting. " "enabling oneshot unclaimed register reporting. "
"Please use i915.mmio_debug=N for more information.\n"); "Please use i915.mmio_debug=N for more information.\n");
i915_modparams.mmio_debug++; i915_modparams.mmio_debug++;
}
dev_priv->uncore.unclaimed_mmio_check--; dev_priv->uncore.unclaimed_mmio_check--;
return true; return true;
} }