Patchwork [U-Boot] cmd_bootm.c: Correct check/return for unsupported sub-command

login
register
mail settings
Submitter Tom Rini
Date July 1, 2013, 1:09 p.m.
Message ID <1372684164-18426-1-git-send-email-trini@ti.com>
Download mbox | patch
Permalink /patch/256125/
State Accepted
Delegated to: Tom Rini
Headers show

Comments

Tom Rini - July 1, 2013, 1:09 p.m.
With the do_bootm_states re-organization, we have the call to any
potential sub-commands in a single spot.  If one fails, we can then stop
right there and return to the caller.  Prior to these calls we have
already ensured that ret is zero so we will not be returning this error
for some other case.

Signed-off-by: Tom Rini <trini@ti.com>
---
 common/cmd_bootm.c |    9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
Andreas Bießmann - July 2, 2013, 1:05 p.m.
On 07/01/2013 03:09 PM, Tom Rini wrote:
> With the do_bootm_states re-organization, we have the call to any
> potential sub-commands in a single spot.  If one fails, we can then stop
> right there and return to the caller.  Prior to these calls we have
> already ensured that ret is zero so we will not be returning this error
> for some other case.
> 
> Signed-off-by: Tom Rini <trini@ti.com>

Tested-by: Andreas Bießmann <andreas.devel@googlemail.com>

on avr32

> ---
>  common/cmd_bootm.c |    9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
Tom Rini - July 3, 2013, 12:37 p.m.
On Tue, Jul 02, 2013 at 03:05:22PM +0200, Andreas Bie?mann wrote:
> On 07/01/2013 03:09 PM, Tom Rini wrote:
> > With the do_bootm_states re-organization, we have the call to any
> > potential sub-commands in a single spot.  If one fails, we can then stop
> > right there and return to the caller.  Prior to these calls we have
> > already ensured that ret is zero so we will not be returning this error
> > for some other case.
> > 
> > Signed-off-by: Tom Rini <trini@ti.com>
> 
> Tested-by: Andreas Bie?mann <andreas.devel@googlemail.com>

Applied to u-boot/master.
Andreas Bießmann - July 4, 2013, 1:24 p.m.
On 07/03/2013 02:37 PM, Tom Rini wrote:
> On Tue, Jul 02, 2013 at 03:05:22PM +0200, Andreas Bie?mann wrote:
>> On 07/01/2013 03:09 PM, Tom Rini wrote:
>>> With the do_bootm_states re-organization, we have the call to any
>>> potential sub-commands in a single spot.  If one fails, we can then stop
>>> right there and return to the caller.  Prior to these calls we have
>>> already ensured that ret is zero so we will not be returning this error
>>> for some other case.
>>>
>>> Signed-off-by: Tom Rini <trini@ti.com>
>>
>> Tested-by: Andreas Bie?mann <andreas.devel@googlemail.com>
> 
> Applied to u-boot/master.
> 

couldn't find it, missing push?

Regards,

Andreas Bießmann
Tom Rini - July 4, 2013, 2:54 p.m.
On Thu, Jul 04, 2013 at 03:24:10PM +0200, Andreas Bie?mann wrote:
> On 07/03/2013 02:37 PM, Tom Rini wrote:
> > On Tue, Jul 02, 2013 at 03:05:22PM +0200, Andreas Bie?mann wrote:
> >> On 07/01/2013 03:09 PM, Tom Rini wrote:
> >>> With the do_bootm_states re-organization, we have the call to any
> >>> potential sub-commands in a single spot.  If one fails, we can then stop
> >>> right there and return to the caller.  Prior to these calls we have
> >>> already ensured that ret is zero so we will not be returning this error
> >>> for some other case.
> >>>
> >>> Signed-off-by: Tom Rini <trini@ti.com>
> >>
> >> Tested-by: Andreas Bie?mann <andreas.devel@googlemail.com>
> > 
> > Applied to u-boot/master.
> > 
> 
> couldn't find it, missing push?

Fixed, thanks!

Patch

diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 02a5013..a36e019 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -669,6 +669,13 @@  static int do_bootm_states(cmd_tbl_t *cmdtp, int flag, int argc,
 	if (!ret && (states & BOOTM_STATE_OS_PREP))
 		ret = boot_fn(BOOTM_STATE_OS_PREP, argc, argv, images);
 
+	/* Check for unsupported subcommand. */
+	if (ret) {
+		puts("subcommand not supported\n");
+		return ret;
+	}
+
+
 #ifdef CONFIG_TRACE
 	/* Pretend to run the OS, then run a user command */
 	if (!ret && (states & BOOTM_STATE_OS_FAKE_GO)) {
@@ -699,8 +706,6 @@  err:
 		bootstage_error(BOOTSTAGE_ID_DECOMP_UNIMPL);
 	else if (ret == BOOTM_ERR_RESET)
 		do_reset(cmdtp, flag, argc, argv);
-	else
-		puts("subcommand not supported\n");
 
 	return ret;
 }