On Thu, 12 Sep 2024, Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> wrote: > Let's kill this legacy iand almost unused rq_enabled version > in favor of the real one that is checked at > intel_irqs_enabled(). > > The commit 'ac1723c16b66 ("drm/i915: Track IRQ state > in local device state")' shows that this was a legacy > DRM level irq_enabled information that got removed. > > But the driver one already existed under a different > name. > > Cc: Jani Nikula <jani.nikula@xxxxxxxxx> > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_drv.h | 2 -- > drivers/gpu/drm/i915/i915_irq.c | 8 ++------ > 2 files changed, 2 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index 39f6614a0a99..aa3000349116 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -343,8 +343,6 @@ struct drm_i915_private { > > struct intel_pxp *pxp; > > - bool irq_enabled; > - > struct i915_pmu pmu; > > /* The TTM device structure. */ > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c > index 2321de48d169..9f1a6f692dd1 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -1406,14 +1406,12 @@ int intel_irq_install(struct drm_i915_private *dev_priv) > */ > dev_priv->runtime_pm.irqs_enabled = true; > > - dev_priv->irq_enabled = true; > - > intel_irq_reset(dev_priv); > > ret = request_irq(irq, intel_irq_handler(dev_priv), > IRQF_SHARED, DRIVER_NAME, dev_priv); > if (ret < 0) { > - dev_priv->irq_enabled = false; > + dev_priv->runtime_pm.irqs_enabled = false; > return ret; > } > > @@ -1439,11 +1437,9 @@ void intel_irq_uninstall(struct drm_i915_private *dev_priv) > * intel_display_driver_remove() calling us out of sequence. > * Would be nice if it didn't do that... > */ > - if (!dev_priv->irq_enabled) > + if (!dev_priv->runtime_pm.irqs_enabled) I think we should just stick a if (drm_WARN_ON(&dev_priv->drm, !dev_priv->runtime_pm.irqs_enabled)) here and remove the FIXME. I don't see a path like that anywhere, anymore. BR, Jani. > return; > > - dev_priv->irq_enabled = false; > - > intel_irq_reset(dev_priv); > > free_irq(irq, dev_priv); -- Jani Nikula, Intel