[alsa-devel] [bug report] ASoC: hdac_hdmi: Begin to add support for DP Multi-stream audio
Dan Carpenter
dan.carpenter at oracle.com
Sat Feb 11 06:11:23 CET 2017
Hello Jeeja KP,
The patch 754695f9960b: "ASoC: hdac_hdmi: Begin to add support for DP
Multi-stream audio" from Feb 6, 2017, leads to the following static
checker warning:
sound/soc/codecs/hdac_hdmi.c:742 hdac_hdmi_set_pin_port_mux()
error: we previously assumed 'pcm->port' could be null (see line 741)
sound/soc/codecs/hdac_hdmi.c
719 static int hdac_hdmi_set_pin_port_mux(struct snd_kcontrol *kcontrol,
720 struct snd_ctl_elem_value *ucontrol)
721 {
722 int ret;
723 struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
724 struct snd_soc_dapm_widget *w = snd_soc_dapm_kcontrol_widget(kcontrol);
725 struct snd_soc_dapm_context *dapm = w->dapm;
726 struct hdac_hdmi_port *port = w->priv;
727 struct hdac_ext_device *edev = to_hda_ext_device(dapm->dev);
728 struct hdac_hdmi_priv *hdmi = edev->private_data;
729 struct hdac_hdmi_pcm *pcm = NULL;
730 const char *cvt_name = e->texts[ucontrol->value.enumerated.item[0]];
731
732 ret = snd_soc_dapm_put_enum_double(kcontrol, ucontrol);
733 if (ret < 0)
734 return ret;
735
736 if (port == NULL)
737 return -EINVAL;
738
739 mutex_lock(&hdmi->pin_mutex);
740 list_for_each_entry(pcm, &hdmi->pcm_list, head) {
741 if (!pcm->port && pcm->port == port &&
^^^^^^^^^
test
742 pcm->port->id == port->id)
^^^^^^^^^^^^^
dereference
743 pcm->port = NULL;
^^^^^^^^^^^^^^^^
Perhaps the NULL test is reversed?
744
745 /*
746 * Jack status is not reported during device probe as the
747 * PCMs are not registered by then. So report it here.
748 */
regards,
dan carpenter
More information about the Alsa-devel
mailing list