* [PATCH] ALSA: hda: Ignore unsol events for cards being shut down
@ 2025-05-30 14:13 Cezary Rojewski
2025-06-02 14:49 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: Cezary Rojewski @ 2025-05-30 14:13 UTC (permalink / raw)
To: tiwai; +Cc: broonie, perex, amadeuszx.slawinski, linux-sound, Cezary Rojewski
For the classic snd_hda_intel driver, codec->card and bus->card point to
the exact same thing. When snd_card_diconnect() fires, bus->shutdown is
set thanks to azx_dev_disconnect(). card->shutdown is already set when
that happens but both provide basically the same functionality.
For the DSP snd_soc_avs driver where multiple codecs are located on
multiple cards, bus->shutdown 'shortcut' is not sufficient. One codec
card may be unregistered while other codecs are still operational.
Proper check in form of card->shutdown must be used to verify whether
the codec's card is being shut down.
Reviewed-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
---
sound/pci/hda/hda_bind.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/pci/hda/hda_bind.c b/sound/pci/hda/hda_bind.c
index 9521e5e0e6e6..fdc8f65c4199 100644
--- a/sound/pci/hda/hda_bind.c
+++ b/sound/pci/hda/hda_bind.c
@@ -44,7 +44,7 @@ static void hda_codec_unsol_event(struct hdac_device *dev, unsigned int ev)
struct hda_codec *codec = container_of(dev, struct hda_codec, core);
/* ignore unsol events during shutdown */
- if (codec->bus->shutdown)
+ if (codec->card->shutdown || codec->bus->shutdown)
return;
/* ignore unsol events during system suspend/resume */
--
2.25.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ALSA: hda: Ignore unsol events for cards being shut down
2025-05-30 14:13 [PATCH] ALSA: hda: Ignore unsol events for cards being shut down Cezary Rojewski
@ 2025-06-02 14:49 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2025-06-02 14:49 UTC (permalink / raw)
To: Cezary Rojewski; +Cc: tiwai, broonie, perex, amadeuszx.slawinski, linux-sound
On Fri, 30 May 2025 16:13:09 +0200,
Cezary Rojewski wrote:
>
> For the classic snd_hda_intel driver, codec->card and bus->card point to
> the exact same thing. When snd_card_diconnect() fires, bus->shutdown is
> set thanks to azx_dev_disconnect(). card->shutdown is already set when
> that happens but both provide basically the same functionality.
>
> For the DSP snd_soc_avs driver where multiple codecs are located on
> multiple cards, bus->shutdown 'shortcut' is not sufficient. One codec
> card may be unregistered while other codecs are still operational.
> Proper check in form of card->shutdown must be used to verify whether
> the codec's card is being shut down.
>
> Reviewed-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Thanks, applied now.
Takashi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-06-02 14:49 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-30 14:13 [PATCH] ALSA: hda: Ignore unsol events for cards being shut down Cezary Rojewski
2025-06-02 14:49 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox