[alsa-devel] ALSA: hda/realtek - Allow NULL bus->pci

Dan Carpenter dan.carpenter at oracle.com
Wed Oct 8 11:32:46 CEST 2014


Hello Takashi Iwai,

The patch 5100cd07d43a: "ALSA: hda/realtek - Allow NULL bus->pci"
from Feb 15, 2014, leads to the following static checker warning:

	sound/pci/hda/patch_realtek.c:5371 patch_alc269()
	warn: variable dereferenced before check 'codec->bus->pci' (see line 5364)

sound/pci/hda/patch_realtek.c
  5363          if (has_cdefine_beep(codec))
                                     ^^^^^
We actually dereference "codec->bus->pci" inside the call to
has_cdefine_beep().

  5364                  spec->gen.beep_nid = 0x01;
  5365  
  5366          switch (codec->vendor_id) {
  5367          case 0x10ec0269:
  5368                  spec->codec_variant = ALC269_TYPE_ALC269VA;
  5369                  switch (alc_get_coef0(codec) & 0x00f0) {
  5370                  case 0x0010:
  5371                          if (codec->bus->pci &&
                                    ^^^^^^^^^^^^^^^
This new check is too late.

  5372                              codec->bus->pci->subsystem_vendor == 0x1025 &&
  5373                              spec->cdefine.platform_type == 1)
  5374                                  err = alc_codec_rename(codec, "ALC271X");
  5375                          spec->codec_variant = ALC269_TYPE_ALC269VB;
  5376                          break;

There is another related warning:

sound/pci/hda/patch_realtek.c:6270 patch_alc662() warn: variable dereferenced before check 'codec->bus->pci' (see line 6267)

regards,
dan carpenter


More information about the Alsa-devel mailing list