
The 'return 0;' statement is not reachable. Remove it. 'else' is superfluous after an if statement with return.
Addresses-Coverity-ID: 352451 ("Logically dead code") Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@canonical.com --- Simon, please, recheck the logic of the function.
The comment 'For 'all' we return all bootflows' implies that in this case 0 should be returned.
Best regards
Heinrich --- boot/bootflow.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/boot/bootflow.c b/boot/bootflow.c index 1ea2966ae9..05484fd5b1 100644 --- a/boot/bootflow.c +++ b/boot/bootflow.c @@ -361,7 +361,7 @@ static int bootflow_check(struct bootflow_iter *iter, struct bootflow *bflow) }
/* Unless there is nothing more to try, move to the next device */ - else if (ret != BF_NO_MORE_PARTS && ret != -ENOSYS) { + if (ret != BF_NO_MORE_PARTS && ret != -ENOSYS) { log_debug("Bootdev '%s' part %d method '%s': Error %d\n", dev->name, iter->part, iter->method->name, ret); /* @@ -371,10 +371,8 @@ static int bootflow_check(struct bootflow_iter *iter, struct bootflow *bflow) if (iter->flags & BOOTFLOWIF_ALL) return log_msg_ret("all", ret); } - if (ret) - return log_msg_ret("check", ret);
- return 0; + return log_msg_ret("check", ret); }
int bootflow_scan_first(struct udevice *dev, const char *label,