[alsa-devel] ASoC: Add max98925 codec driver

Dan Carpenter dan.carpenter at oracle.com
Tue Mar 17 19:28:43 CET 2015


Hello Anish Kumar,

The patch 1ff2765182d1: "ASoC: Add max98925 codec driver" from Mar 9,
2015, leads to the following static checker warning:

	sound/soc/codecs/max98925.c:274 max98925_rate_value()
	error: buffer overflow 'rate_table' 9 <= 9

sound/soc/codecs/max98925.c
   259  static inline int max98925_rate_value(struct snd_soc_codec *codec,
   260                  int rate, int clock, int *value, int *n, int *m)
   261  {
   262          int ret = -EINVAL;
   263          int i;
   264  
   265          for (i = 0; i < ARRAY_SIZE(rate_table); i++) {
   266                  if (rate_table[i].rate >= rate) {
   267                          *value = rate_table[i].sr;
   268                          *n = rate_table[i].divisors[clock][0];
   269                          *m = rate_table[i].divisors[clock][1];
   270                          ret = 0;
   271                          break;
   272                  }
   273          }
   274          dev_dbg(codec->dev, "%s: sample rate is %d, returning %d\n",
   275                                  __func__, rate_table[i].rate, *value);
                                                  ^^^^^^^^^^^^^^^^^^
If we don't break then we're off by one.

   276          return ret;
   277  }

regards,
dan carpenter


More information about the Alsa-devel mailing list