Message ID | 20230210165541.3543604-1-cezary.rojewski@intel.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 3af4a4f7a20c94009adba65764fa5a0269d70a82 |
Headers | show |
Series | ALSA: hda: Fix codec device field initializan | expand |
On Fri, 10 Feb 2023 17:55:41 +0100, Cezary Rojewski wrote: > > Commit f2bd1c5ae2cb ("ALSA: hda: Fix page fault in > snd_hda_codec_shutdown()") relocated initialization of several codec > device fields. Due to differences between codec_exec_verb() and > snd_hdac_bus_exec_bus() in how they handle VERB execution - the latter > does not touch PM - assigning ->exec_verb to codec_exec_verb() causes PM > to be engaged before it is configured for the device. Configuration of > PM for the ASoC HDAudio sound card is done with snd_hda_set_power_save() > during skl_hda_audio_probe() whereas the assignment happens early, in > snd_hda_codec_device_init(). > > Revert to previous behavior to avoid problems caused by too early PM > manipulation. > > Suggested-by: Jason Montleon <jmontleo@redhat.com> > Link: https://lore.kernel.org/regressions/CALFERdzKUodLsm6=Ub3g2+PxpNpPtPq3bGBLbff=eZr9_S=YVA@mail.gmail.com > Fixes: f2bd1c5ae2cb ("ALSA: hda: Fix page fault in snd_hda_codec_shutdown()") > Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> > --- > > A result of recent discussion [1] regarding sound regression in v6.1 and > onward. Fix made possible by outstanding input from Jason and Sasa > (Cced) - Thank you! > > Note: I did not receive results from our CI yet, should happen on Monday > but posting early so the review can be conducted. > > [1]: https://lore.kernel.org/regressions/CALFERdzKUodLsm6=Ub3g2+PxpNpPtPq3bGBLbff=eZr9_S=YVA@mail.gmail.com/ Applied now. Thanks. Takashi
On 2023-02-10 5:55 PM, Cezary Rojewski wrote: ... > A result of recent discussion [1] regarding sound regression in v6.1 and > onward. Fix made possible by outstanding input from Jason and Sasa > (Cced) - Thank you! > > Note: I did not receive results from our CI yet, should happen on Monday > but posting early so the review can be conducted. Current results show no regression on SKL/KBL/APL RVPs with the skylake-driver. Tested-by: Cezary Rojewski <cezary.rojewski@intel.com> > [1]: https://lore.kernel.org/regressions/CALFERdzKUodLsm6=Ub3g2+PxpNpPtPq3bGBLbff=eZr9_S=YVA@mail.gmail.com/
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c index ac1cc7c5290e..2e728aad6771 100644 --- a/sound/pci/hda/hda_codec.c +++ b/sound/pci/hda/hda_codec.c @@ -927,7 +927,6 @@ snd_hda_codec_device_init(struct hda_bus *bus, unsigned int codec_addr, codec->depop_delay = -1; codec->fixup_id = HDA_FIXUP_ID_NOT_SET; codec->core.dev.release = snd_hda_codec_dev_release; - codec->core.exec_verb = codec_exec_verb; codec->core.type = HDA_DEV_LEGACY; mutex_init(&codec->spdif_mutex); @@ -998,6 +997,7 @@ int snd_hda_codec_device_new(struct hda_bus *bus, struct snd_card *card, if (snd_BUG_ON(codec_addr > HDA_MAX_CODEC_ADDRESS)) return -EINVAL; + codec->core.exec_verb = codec_exec_verb; codec->card = card; codec->addr = codec_addr;
Commit f2bd1c5ae2cb ("ALSA: hda: Fix page fault in snd_hda_codec_shutdown()") relocated initialization of several codec device fields. Due to differences between codec_exec_verb() and snd_hdac_bus_exec_bus() in how they handle VERB execution - the latter does not touch PM - assigning ->exec_verb to codec_exec_verb() causes PM to be engaged before it is configured for the device. Configuration of PM for the ASoC HDAudio sound card is done with snd_hda_set_power_save() during skl_hda_audio_probe() whereas the assignment happens early, in snd_hda_codec_device_init(). Revert to previous behavior to avoid problems caused by too early PM manipulation. Suggested-by: Jason Montleon <jmontleo@redhat.com> Link: https://lore.kernel.org/regressions/CALFERdzKUodLsm6=Ub3g2+PxpNpPtPq3bGBLbff=eZr9_S=YVA@mail.gmail.com Fixes: f2bd1c5ae2cb ("ALSA: hda: Fix page fault in snd_hda_codec_shutdown()") Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> --- A result of recent discussion [1] regarding sound regression in v6.1 and onward. Fix made possible by outstanding input from Jason and Sasa (Cced) - Thank you! Note: I did not receive results from our CI yet, should happen on Monday but posting early so the review can be conducted. [1]: https://lore.kernel.org/regressions/CALFERdzKUodLsm6=Ub3g2+PxpNpPtPq3bGBLbff=eZr9_S=YVA@mail.gmail.com/ sound/pci/hda/hda_codec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)