[PATCH v7 04/24] x86: Don't process the kernel command line unless enabled

Simon Glass sjg at chromium.org
Thu Dec 30 07:03:02 CET 2021


Hi Tom,

On Wed, 29 Dec 2021 at 06:45, Tom Rini <trini at konsulko.com> wrote:
>
> On Wed, Dec 29, 2021 at 06:36:30AM -0700, Simon Glass wrote:
> > Hi Heinrich,
> >
> > On Tue, 21 Dec 2021 at 00:37, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
> > >
> > > On 12/18/21 19:28, Simon Glass wrote:
> > > > If the 'bootm' command is not enabled then this code is not available and
> > > > this causes a link error. Fix it.
> > > >
> > > > Note that for the EFI app, there is no indication of missing code. It just
> > > > hangs!
> > > >
> > > > Signed-off-by: Simon Glass <sjg at chromium.org>
> > > > ---
> > > >
> > > > (no changes since v1)
> > > >
> > > >   arch/x86/lib/zimage.c | 13 ++++++++-----
> > > >   1 file changed, 8 insertions(+), 5 deletions(-)
> > > >
> > > > diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
> > > > index 7ce02226ef9..9cc04490307 100644
> > > > --- a/arch/x86/lib/zimage.c
> > > > +++ b/arch/x86/lib/zimage.c
> > > > @@ -365,11 +365,14 @@ int setup_zimage(struct boot_params *setup_base, char *cmd_line, int auto_boot,
> > > >                       strcpy(cmd_line, (char *)cmdline_force);
> > > >               else
> > > >                       build_command_line(cmd_line, auto_boot);
> > > > -             ret = bootm_process_cmdline(cmd_line, max_size, BOOTM_CL_ALL);
> > > > -             if (ret) {
> > > > -                     printf("Cmdline setup failed (max_size=%x, bootproto=%x, err=%d)\n",
> > > > -                            max_size, bootproto, ret);
> > > > -                     return ret;
> > > > +             if (IS_ENABLED(CONFIG_CMD_BOOTM)) {
> > >
> > > For zImages we have command bootz. Why would you disable this if
> > > CONFIG_CMD_BOOTZ=y?
> >
> > Well, without the 'bootm' command, this bootm_process_cmdline()
> > functoin does not exist. So it just hangs. One thing we need to fix is
> > that it should give a build error when a function is missing, not just
> > hang. But in any case, this would prevent a build error if that
> > worked. So we still need this change.
>
> Perhaps a new common symbol for CMD_BOOT[IMZ] to select to control the
> common do_bootm_* code inclusion, both here, other arch code and
> boot/Makefile.

Yes, that would be good.

Regards,
Simon


More information about the U-Boot mailing list