drm/i915/audio: error log non-zero audio power refcount after unbind
authorJani Nikula <jani.nikula@intel.com>
Fri, 17 Apr 2020 06:51:32 +0000 (09:51 +0300)
committerJani Nikula <jani.nikula@intel.com>
Mon, 20 Apr 2020 06:41:10 +0000 (09:41 +0300)
We have some module unload/reload tests hitting an issue with i915
unbinding the component interface before the audio driver has properly
put the power. Log an error about it for ease of debugging. (Normally
this leads to a wakeref debug splat on the power well.)

Cc: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200417065132.23048-1-jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_audio.c

index dc311bb..2663e71 100644 (file)
@@ -1284,6 +1284,10 @@ static void i915_audio_component_unbind(struct device *i915_kdev,
        drm_modeset_unlock_all(&dev_priv->drm);
 
        device_link_remove(hda_kdev, i915_kdev);
+
+       if (dev_priv->audio_power_refcount)
+               drm_err(&dev_priv->drm, "audio power refcount %d after unbind\n",
+                       dev_priv->audio_power_refcount);
 }
 
 static const struct component_ops i915_audio_component_bind_ops = {