[U-Boot] [PATCH] Prevent a U-Boot crash on Wandboard
Albert ARIBAUD
albert.u.boot at aribaud.net
Mon Sep 23 18:11:58 CEST 2013
Hi Steven,
On Sun, 22 Sep 2013 21:21:32 -0400, Steven Falco
<stevenfalco at gmail.com> wrote:
> Prevent a crash when PXE boot calls do_bootm with a vmlinuz formatted image.
> In this case, there will be a null cmdtp pointer, and we must not dereference
> it.
>
> Signed-off-by: Steven A. Falco <stevenfalco at gmail.com>
>
> ---
>
> In file cmd_pxe.c around line 687 is a call:
>
> do_bootm(NULL, 0, bootm_argc, bootm_argv);
>
> Notice that the first argument is NULL. Therefore, the cmdtp
> pointer will always be NULL when using the pxe boot mechanism.
>
> do_bootm() eventually calls boot_get_kernel(), still with cmdtp == NULL.
> In the Wandboard case, the vmlinuz binary is not "legacy format", nor is
> it "fit format", so U-Boot attempts to print:
>
> printf("Wrong Image Format for %s command\n", cmdtp->name);
>
> That is doomed to fail, because cmdtp is NULL. The following patch corrects
> the problem; the command name will be printed only if the pointer is valid.
Then shouldn't the patch subject/summary be "print command name only
if cmdtp is not NULL" rather than the quite uninformative "prevent a
crash"?
Amicalement,
--
Albert.
More information about the U-Boot
mailing list