mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-09-22 09:34:56 +02:00
ASoC: qdsp6: qdafe: fix some off by one bugs
[ Upstream commitc54c1c5ee8] The > should be >= or we could read one element beyond the end of the port_maps[] array. Fixes:7fa2d70f97("ASoC: qdsp6: q6afe: Add q6afe driver") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
49fc6188cd
commit
3dc220c525
@@ -777,7 +777,7 @@ static int q6afe_callback(struct apr_device *adev, struct apr_resp_pkt *data)
|
||||
*/
|
||||
int q6afe_get_port_id(int index)
|
||||
{
|
||||
if (index < 0 || index > AFE_PORT_MAX)
|
||||
if (index < 0 || index >= AFE_PORT_MAX)
|
||||
return -EINVAL;
|
||||
|
||||
return port_maps[index].port_id;
|
||||
@@ -1014,7 +1014,7 @@ int q6afe_port_stop(struct q6afe_port *port)
|
||||
|
||||
port_id = port->id;
|
||||
index = port->token;
|
||||
if (index < 0 || index > AFE_PORT_MAX) {
|
||||
if (index < 0 || index >= AFE_PORT_MAX) {
|
||||
dev_err(afe->dev, "AFE port index[%d] invalid!\n", index);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1355,7 +1355,7 @@ struct q6afe_port *q6afe_port_get_from_id(struct device *dev, int id)
|
||||
unsigned long flags;
|
||||
int cfg_type;
|
||||
|
||||
if (id < 0 || id > AFE_PORT_MAX) {
|
||||
if (id < 0 || id >= AFE_PORT_MAX) {
|
||||
dev_err(dev, "AFE port token[%d] invalid!\n", id);
|
||||
return ERR_PTR(-EINVAL);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user