<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - [CI][IGT] DRM-Tip 4.17-rc5 RIP: 0010:snd_hdac_display_power dmesg splat"
href="https://bugs.freedesktop.org/show_bug.cgi?id=106525#c6">Comment # 6</a>
on <a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - [CI][IGT] DRM-Tip 4.17-rc5 RIP: 0010:snd_hdac_display_power dmesg splat"
href="https://bugs.freedesktop.org/show_bug.cgi?id=106525">bug 106525</a>
from <span class="vcard"><a class="email" href="mailto:tiwai@suse.de" title="Takashi Iwai <tiwai@suse.de>"> <span class="fn">Takashi Iwai</span></a>
</span></b>
<pre>(In reply to Imre Deak from <a href="show_bug.cgi?id=106525#c5">comment #5</a>)
<span class="quote">> Looks like a refcounting bug in the HDA driver:
> WARN_ON(!bus->drm_power_refcount);</span >
Hm, the device free gets called during it being suspended.
A shot in the dark:
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
@@ -834,7 +834,8 @@ static int snd_hda_codec_dev_free(struct snd_device
*device)
codec->in_freeing = 1;
snd_hdac_device_unregister(&codec->core);
- snd_hdac_link_power(&codec->core, false);
+ if (pm_runtime_active(hda_codec_dev(codec)))
+ snd_hdac_link_power(&codec->core, false);
put_device(hda_codec_dev(codec));
return 0;
}
<span class="quote">> Takashi, is there a bugzilla for the HDA driver we could we move this ticket
> to?</span >
Feel free to move to bugzilla.kernel.org. Thanks.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
<li>You are the QA Contact for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>