[Intel-gfx] [PATCH V2] drm/i915: Add messages useful for HPD storm detection debugging (v2)

2013-07-26 Thread Egbert Eich
For HPD storm detection we now mask out individual interrupt source
bits. We have already seen a case where HPD interrupt enable bits
were assigned to the wrong pins. To track these conditions more
easily add some debugging messages.

v2: Spelling fixes as suggested by Jani Nikula jani.nik...@linux.intel.com

Signed-off-by: Egbert Eich e...@suse.de
---
 drivers/gpu/drm/i915/i915_irq.c | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index ee3e49c..6a1c207 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -919,6 +919,10 @@ static inline void intel_hpd_irq_handler(struct drm_device 
*dev,
spin_lock(dev_priv-irq_lock);
for (i = 1; i  HPD_NUM_PINS; i++) {
 
+   WARN(((hpd[i]  hotplug_trigger) 
+ dev_priv-hpd_stats[i].hpd_mark != HPD_ENABLED),
+Received HPD interrupt although disabled\n);
+
if (!(hpd[i]  hotplug_trigger) ||
dev_priv-hpd_stats[i].hpd_mark != HPD_ENABLED)
continue;
@@ -929,6 +933,7 @@ static inline void intel_hpd_irq_handler(struct drm_device 
*dev,
   + 
msecs_to_jiffies(HPD_STORM_DETECT_PERIOD))) {
dev_priv-hpd_stats[i].hpd_last_jiffies = jiffies;
dev_priv-hpd_stats[i].hpd_cnt = 0;
+   DRM_DEBUG_KMS(Received HPD interrupt on PIN %d - cnt: 
0\n, i);
} else if (dev_priv-hpd_stats[i].hpd_cnt  
HPD_STORM_THRESHOLD) {
dev_priv-hpd_stats[i].hpd_mark = HPD_MARK_DISABLED;
dev_priv-hpd_event_bits = ~(1  i);
@@ -936,6 +941,8 @@ static inline void intel_hpd_irq_handler(struct drm_device 
*dev,
storm_detected = true;
} else {
dev_priv-hpd_stats[i].hpd_cnt++;
+   DRM_DEBUG_KMS(Received HPD interrupt on PIN %d - cnt: 
%d\n, i,
+ dev_priv-hpd_stats[i].hpd_cnt);
}
}
 
-- 
1.8.1.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH V2] drm/i915: Add messages useful for HPD storm detection debugging (v2)

2013-07-26 Thread Jani Nikula
On Fri, 26 Jul 2013, Egbert Eich e...@suse.de wrote:
 For HPD storm detection we now mask out individual interrupt source
 bits. We have already seen a case where HPD interrupt enable bits
 were assigned to the wrong pins. To track these conditions more
 easily add some debugging messages.

 v2: Spelling fixes as suggested by Jani Nikula jani.nik...@linux.intel.com

Reviewed-by: Jani Nikula jani.nik...@intel.com

 Signed-off-by: Egbert Eich e...@suse.de
 ---
  drivers/gpu/drm/i915/i915_irq.c | 7 +++
  1 file changed, 7 insertions(+)

 diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
 index ee3e49c..6a1c207 100644
 --- a/drivers/gpu/drm/i915/i915_irq.c
 +++ b/drivers/gpu/drm/i915/i915_irq.c
 @@ -919,6 +919,10 @@ static inline void intel_hpd_irq_handler(struct 
 drm_device *dev,
   spin_lock(dev_priv-irq_lock);
   for (i = 1; i  HPD_NUM_PINS; i++) {
  
 + WARN(((hpd[i]  hotplug_trigger) 
 +   dev_priv-hpd_stats[i].hpd_mark != HPD_ENABLED),
 +  Received HPD interrupt although disabled\n);
 +
   if (!(hpd[i]  hotplug_trigger) ||
   dev_priv-hpd_stats[i].hpd_mark != HPD_ENABLED)
   continue;
 @@ -929,6 +933,7 @@ static inline void intel_hpd_irq_handler(struct 
 drm_device *dev,
  + 
 msecs_to_jiffies(HPD_STORM_DETECT_PERIOD))) {
   dev_priv-hpd_stats[i].hpd_last_jiffies = jiffies;
   dev_priv-hpd_stats[i].hpd_cnt = 0;
 + DRM_DEBUG_KMS(Received HPD interrupt on PIN %d - cnt: 
 0\n, i);
   } else if (dev_priv-hpd_stats[i].hpd_cnt  
 HPD_STORM_THRESHOLD) {
   dev_priv-hpd_stats[i].hpd_mark = HPD_MARK_DISABLED;
   dev_priv-hpd_event_bits = ~(1  i);
 @@ -936,6 +941,8 @@ static inline void intel_hpd_irq_handler(struct 
 drm_device *dev,
   storm_detected = true;
   } else {
   dev_priv-hpd_stats[i].hpd_cnt++;
 + DRM_DEBUG_KMS(Received HPD interrupt on PIN %d - cnt: 
 %d\n, i,
 +   dev_priv-hpd_stats[i].hpd_cnt);
   }
   }
  
 -- 
 1.8.1.4


-- 
Jani Nikula, Intel Open Source Technology Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH V2] drm/i915: Add messages useful for HPD storm detection debugging (v2)

2013-07-26 Thread Daniel Vetter
On Fri, Jul 26, 2013 at 03:23:54PM +0300, Jani Nikula wrote:
 On Fri, 26 Jul 2013, Egbert Eich e...@suse.de wrote:
  For HPD storm detection we now mask out individual interrupt source
  bits. We have already seen a case where HPD interrupt enable bits
  were assigned to the wrong pins. To track these conditions more
  easily add some debugging messages.
 
  v2: Spelling fixes as suggested by Jani Nikula jani.nik...@linux.intel.com
 
 Reviewed-by: Jani Nikula jani.nik...@intel.com
Queued for -next, thanks for the patch.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx