On Tue, 09 Nov 2021 22:12:30 +0100, Scott Branden wrote: > > I'm reporting a new WARN_ON in sound/hda/hdac_bus.c that was not > present in 5.15. Sorry, I don't have time to bisect this right now > but report is below. > > dmesg in 5.14 kernel was: > snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops 0xffffffffaa2ac520) > GACT probability on > Mirror/redirect action on > Simple TC action Loaded > u32 classifier > Performance counters on > input device check on > Actions configured > hdaudio hdaudioC0D0: Unable to bind the codec > hdaudio hdaudioC0D2: Unable to bind the codec > > dmesg in 5.15 kernel produces WARN_ON in sound/hda/hdac_bus.c > snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops 0xffffffffad8b02a0) > GACT probability on > Mirror/redirect action on > Simple TC action Loaded > u32 classifier > Performance counters on > input device check on > Actions configured > snd_hda_intel 0000:00:1f.3: Cannot probe codecs, giving up > Initializing XFRM netlink socket > ------------[ cut here ]------------ > NET: Registered PF_INET6 protocol family > WARNING: CPU: 14 PID: 186 at sound/hda/hdac_bus.c:73 This indicates the leftover codecs on the bus, and it's likely triggered by the recent change to allow retrying the codec probes. Did this HD-audio stuff work at all before 5.15? The codec bind error itself shouldn't be brought by that change. The warning itself can be solved by the patch below, I suppose (note: totally untested!) thanks, Takashi --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c @@ -2327,7 +2327,8 @@ static int azx_probe_continue(struct azx *chip) out_free: if (err < 0) { - azx_free(chip); + pci_set_drvdata(pci, NULL); + snd_card_free(chip->card); return err; }