diff options
author | Sjur Brændeland <sjur.brandeland@stericsson.com> | 2012-06-10 07:37:51 -0400 |
---|---|---|
committer | Ohad Ben-Cohen <ohad@wizery.com> | 2012-06-10 07:49:46 -0400 |
commit | 30338cf09f82523d8747670f7363cc8af347c79f (patch) | |
tree | 3a2c824ce909edfcb7a8b5899829699a0618333a /drivers/remoteproc/remoteproc_core.c | |
parent | e981f6d41acda2ae8c05e60feb2cb97772b4a6e6 (diff) |
remoteproc: fix missing fault indication in error-path
If rproc_find_rsc_table() fails, rproc_fw_boot() must set
return-value before jumping to clean_up label. Otherwise no
error value is returned.
Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/remoteproc/remoteproc_core.c')
-rw-r--r-- | drivers/remoteproc/remoteproc_core.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c index cb13f1b74416..66324ee4678f 100644 --- a/drivers/remoteproc/remoteproc_core.c +++ b/drivers/remoteproc/remoteproc_core.c | |||
@@ -1041,8 +1041,10 @@ static int rproc_fw_boot(struct rproc *rproc, const struct firmware *fw) | |||
1041 | 1041 | ||
1042 | /* look for the resource table */ | 1042 | /* look for the resource table */ |
1043 | table = rproc_find_rsc_table(rproc, fw->data, fw->size, &tablesz); | 1043 | table = rproc_find_rsc_table(rproc, fw->data, fw->size, &tablesz); |
1044 | if (!table) | 1044 | if (!table) { |
1045 | ret = -EINVAL; | ||
1045 | goto clean_up; | 1046 | goto clean_up; |
1047 | } | ||
1046 | 1048 | ||
1047 | /* handle fw resources which are required to boot rproc */ | 1049 | /* handle fw resources which are required to boot rproc */ |
1048 | ret = rproc_handle_boot_rsc(rproc, table, tablesz); | 1050 | ret = rproc_handle_boot_rsc(rproc, table, tablesz); |