Commit 6796cd84 authored by sayli karnik's avatar sayli karnik Committed by Greg Kroah-Hartman

staging: greybus: loopback_test: Fix open error path

Change array index from the loop bound variable to loop index.
If a poll file fails to open for any intermediate device, all poll files with
fds of devices from 0 upto that device must be closed in the open_poll_files()
function. The current code only closes the poll file with the most recent fd
allocated, and at times tries to close the same file multiple times.

Detected by coccinelle:

@@
expression arr,ex1,ex2;
@@

for(ex1 = 0; ex1 < ex2; ex1++) { <...
  arr[
- ex2
+ ex1
  ]
  ...> }
Signed-off-by: default avatarsayli karnik <karniksayli1995@gmail.com>
Reviewed-by: default avatarJohan Hovold <johan@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent fea3860d
...@@ -674,7 +674,7 @@ static int open_poll_files(struct loopback_test *t) ...@@ -674,7 +674,7 @@ static int open_poll_files(struct loopback_test *t)
err: err:
for (i = 0; i < fds_idx; i++) for (i = 0; i < fds_idx; i++)
close(t->fds[fds_idx].fd); close(t->fds[i].fd);
return -1; return -1;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment