ALSA: hda: Skip codec shutdown in case the codec is not registered
PATCH 1/1 ALSA: hda: Skip codec shutdown in case the codec is not registered
If the codec->registered is not set then it means that pm_runtime is not yet enabled and the codec->pcm_list_head has not been initialized.
The access to the not initialized pcm_list_head will lead a kernel crash during shutdown.
Reported-by Guennadi Liakhovetski <[email protected]>
Signed-off-by Peter Ujfalusi <[email protected]>
--- sound/pci/hda/hda_codec.c | 4 ++++ 1 file changed, 4 insertions(+)
sound/pci/hda/hda_codec.c +4 -0
@@ -3000,6 +3000,10 @@ void snd_hda_codec_shutdown(struct hda_codec *codec) {struct hda_pcm *cpcm; +/* Skip the shutdown if codec is not registered */ +if (!codec->registered) +return ; +list_for_each_entry (cpcm, &codec->pcm_list_head, list)snd_pcm_suspend_all (cpcm->pcm);
Signature · 1 line
2.35.0
Takashi Iwai
AppliedQuoted 10 lines · Peter Ujfalusi
If the
codec->registeredis not set then it means thatpm_runtimeis not yet enabled and thecodec->pcm_list_headhas not been initialized.The access to the not initialized
pcm_list_headwill lead a kernel crash during shutdown.Reported-by Guennadi Liakhovetski <[email protected]>Signed-off-by Peter Ujfalusi <[email protected]>
Thanks, applied now.
Takashi