summaryrefslogtreecommitdiffstats
path: root/drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c
diff options
context:
space:
mode:
authorDan Carpenter2017-03-14 08:51:31 +0100
committerGreg Kroah-Hartman2017-03-16 03:20:03 +0100
commitf07d4b4270670b099a7034936e519d2efecf81ec (patch)
treed348fff6ac166c666c33a0de09aac6b23b7a65df /drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c
parentstaging: media: atomisp: fix semicolon.cocci warnings (diff)
downloadkernel-qcow2-linux-f07d4b4270670b099a7034936e519d2efecf81ec.tar.gz
kernel-qcow2-linux-f07d4b4270670b099a7034936e519d2efecf81ec.tar.xz
kernel-qcow2-linux-f07d4b4270670b099a7034936e519d2efecf81ec.zip
staging: atomisp: off by one in atomisp_acc_load_extensions()
We should be doing i-- on all error paths but we don't if the loop finishes successfully. I've re-arranged this so that we don't read beyond the end of acc_flag_to_pipe[] array. Fixes: a49d25364dfb ("staging/atomisp: Add support for the Intel IPU v2") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c')
-rw-r--r--drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c b/drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c
index 4c35a785c7d5..212e0a777b4b 100644
--- a/drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c
+++ b/drivers/staging/media/atomisp/pci/atomisp2/atomisp_acc.c
@@ -472,10 +472,8 @@ int atomisp_acc_load_extensions(struct atomisp_sub_device *asd)
acc_fw->fw,
acc_flag_to_pipe[i].pipe_id,
acc_fw->type);
- if (ret) {
- i--;
+ if (ret)
goto error;
- }
ext_loaded = true;
}
@@ -499,7 +497,7 @@ int atomisp_acc_load_extensions(struct atomisp_sub_device *asd)
return 0;
error:
- for (; i >= 0; i--) {
+ while (--i >= 0) {
if (acc_fw->flags & acc_flag_to_pipe[i].flag) {
atomisp_css_unload_acc_extension(asd, acc_fw->fw,
acc_flag_to_pipe[i].pipe_id);