On Mon, Jun 29, 2015 at 04:30:40PM +0530, Sivakumar Thulasimani wrote: > From: "Thulasimani, Sivakumar" <sivakumar.thulasimani@xxxxxxxxx> > > HPD storm is detected in intel_hpd_irq_handler and disabled for respective > port immediately but polling is enabled only in i915_hotplug_work_func and > not in i915_digport_work_func. This will result in disabled hpd never enabled > back again. This is fixed by calling the appropriate storm disable function > that will handle the rest of the sequence (both polling enable and reenabling > of HPD later). > --- > drivers/gpu/drm/i915/intel_hotplug.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_hotplug.c b/drivers/gpu/drm/i915/intel_hotplug.c > index 3c53aac..8e18587 100644 > --- a/drivers/gpu/drm/i915/intel_hotplug.c > +++ b/drivers/gpu/drm/i915/intel_hotplug.c > @@ -205,6 +205,10 @@ static void i915_digport_work_func(struct work_struct *work) > dev_priv->hotplug.long_port_mask = 0; > short_port_mask = dev_priv->hotplug.short_port_mask; > dev_priv->hotplug.short_port_mask = 0; > + > + /* Disable hotplug on connectors that hit an irq storm. */ > + intel_hpd_irq_storm_disable(dev_priv); digport_work_func schedules the hotplug handler for everything not handled, which should result in this getting called. It really shouldn't matter when exactly it gets called. Can you please provide more data and details for your analysis? Like bug reports, backtraces and dmesg traces showing that the handler is stuck and similar things. Also your patch is missing the s-o-b line. -Daniel > + > spin_unlock_irq(&dev_priv->irq_lock); > > for (i = 0; i < I915_MAX_PORTS; i++) { > -- > 1.7.9.5 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx