diff options
author | Daniel Stone <daniels@collabora.com> | 2015-11-20 10:55:34 -0500 |
---|---|---|
committer | Imre Deak <imre.deak@intel.com> | 2015-11-23 10:09:34 -0500 |
commit | 11c86db8f052fec64804c19519a8d35958ed8aef (patch) | |
tree | 1753fb0cc2faf8c6f2768cc290a218314f244cd0 | |
parent | 9895ad03c871893f6acd66a3b6210db0c1ba5933 (diff) |
drm/i915/pm: Print offending domain in refcount failure
If we experience a refcounting failure in a power domain/well (unref'ing at
least one too many times), log the name of the offending domain or well.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1448034934-11926-2-git-send-email-daniels@collabora.com
-rw-r--r-- | drivers/gpu/drm/i915/intel_runtime_pm.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c b/drivers/gpu/drm/i915/intel_runtime_pm.c index ec38409242d5..3fa43af94946 100644 --- a/drivers/gpu/drm/i915/intel_runtime_pm.c +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c | |||
@@ -1499,11 +1499,15 @@ void intel_display_power_put(struct drm_i915_private *dev_priv, | |||
1499 | 1499 | ||
1500 | mutex_lock(&power_domains->lock); | 1500 | mutex_lock(&power_domains->lock); |
1501 | 1501 | ||
1502 | WARN_ON(!power_domains->domain_use_count[domain]); | 1502 | WARN(!power_domains->domain_use_count[domain], |
1503 | "Use count on domain %s is already zero\n", | ||
1504 | intel_display_power_domain_str(domain)); | ||
1503 | power_domains->domain_use_count[domain]--; | 1505 | power_domains->domain_use_count[domain]--; |
1504 | 1506 | ||
1505 | for_each_power_well_rev(i, power_well, BIT(domain), power_domains) { | 1507 | for_each_power_well_rev(i, power_well, BIT(domain), power_domains) { |
1506 | WARN_ON(!power_well->count); | 1508 | WARN(!power_well->count, |
1509 | "Use count on power well %s is already zero", | ||
1510 | power_well->name); | ||
1507 | 1511 | ||
1508 | if (!--power_well->count) | 1512 | if (!--power_well->count) |
1509 | intel_power_well_disable(dev_priv, power_well); | 1513 | intel_power_well_disable(dev_priv, power_well); |