Browse Source

ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data()

The main thing is that the data->priv[] array has AFE_PORT_MAX elements
so the > condition should be >=.  But we may as well check for negative
values as well just to be safe.

Fixes: 24c4cbcfac09 ("ASoC: qdsp6: q6afe: Add q6afe dai driver")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Dan Carpenter 7 years ago
parent
commit
b8110a87b7
1 changed files with 1 additions and 1 deletions
  1. 1 1
      sound/soc/qcom/qdsp6/q6afe-dai.c

+ 1 - 1
sound/soc/qcom/qdsp6/q6afe-dai.c

@@ -1183,7 +1183,7 @@ static void of_q6afe_parse_dai_data(struct device *dev,
 		int id, i, num_lines;
 
 		ret = of_property_read_u32(node, "reg", &id);
-		if (ret || id > AFE_PORT_MAX) {
+		if (ret || id < 0 || id >= AFE_PORT_MAX) {
 			dev_err(dev, "valid dai id not found:%d\n", ret);
 			continue;
 		}