[Intel-gfx] [PATCH] drm/i915: Double check we didn't miss an unclaimed register access

Chris Wilson chris at chris-wilson.co.uk
Tue Sep 4 12:38:27 UTC 2018


Quoting Mika Kuoppala (2018-09-04 13:34:12)
> Chris Wilson <chris at chris-wilson.co.uk> writes:
> 
> > 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 at chris-wilson.co.uk>
> > Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> > ---
> >  drivers/gpu/drm/i915/intel_uncore.c | 13 +++++++------
> >  1 file changed, 7 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
> > index 20f2f5ad9c3f..05f0cda18501 100644
> > --- a/drivers/gpu/drm/i915/intel_uncore.c
> > +++ b/drivers/gpu/drm/i915/intel_uncore.c
> > @@ -2283,15 +2283,16 @@ bool intel_uncore_unclaimed_mmio(struct drm_i915_private *dev_priv)
> >  bool
> >  intel_uncore_arm_unclaimed_mmio_detection(struct drm_i915_private *dev_priv)
> >  {
> > -     if (unlikely(i915_modparams.mmio_debug ||
> > -                  dev_priv->uncore.unclaimed_mmio_check <= 0))
> > +     if (unlikely(dev_priv->uncore.unclaimed_mmio_check <= 0))
> >               return false;
> >
> 
> We could catch the readers attention by marking this as READ_ONCE.
> 
> 
> And then take spinlock here before checking for unclaimed.

Could do, feels like overkill, but not contentious.
> 
> We poke here from hangcheck at unknown intervals and I am
> concerned both the trampling on the check values and also
> the register access of the unclaimed debug regs.
> 
> Which also raises the question that should we just move
> the arming check to park/unpark?

We still want around modeset, suspend/resume. I'd rather have the
periodic poking off the main thread (i.e. hangcheck) tbh.
-Chris


More information about the Intel-gfx mailing list