Re: [PATCH RFC bootconfig] Allow forcing unconditional bootconfig processing

From: Google
Date: Fri Feb 24 2023 - 11:13:19 EST


Hi Geert,

On Fri, 24 Feb 2023 09:31:50 +0100
Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:

> Hi Paul,
>
> On Sat, Jan 7, 2023 at 5:33 PM Paul E. McKenney <paulmck@xxxxxxxxxx> wrote:
> > On Sun, Jan 08, 2023 at 12:22:15AM +0900, Masami Hiramatsu wrote:
> > > BTW, maybe CONFIG_BOOT_CONFIG_EMBED is better to select this.
> > > (or at least recommend to enable this)
> >
> > Like this?
> >
> > Thanx, Paul
> >
> > ------------------------------------------------------------------------
> >
> > commit d09a1505c51a70da38b34ac38062977299aef742
> > Author: Paul E. McKenney <paulmck@xxxxxxxxxx>
> > Date: Sat Jan 7 08:09:22 2023 -0800
> >
> > bootconfig: Default BOOT_CONFIG_FORCE to y if BOOT_CONFIG_EMBED
> >
> > When a kernel is built with CONFIG_BOOT_CONFIG_EMBED=y, the intention
> > will normally be to unconditionally provide the specified kernel-boot
> > arguments to the kernel, as opposed to requiring a separately provided
> > bootconfig parameter. Therefore, make the BOOT_CONFIG_FORCE Kconfig
> > option default to y in kernels built with CONFIG_BOOT_CONFIG_EMBED=y.
> >
> > The old semantics may be obtained by manually overriding this default.
> >
> > Suggested-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> > Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
> >
> > diff --git a/init/Kconfig b/init/Kconfig
> > index 0fb19fa0edba9..97a0f14d9020d 100644
> > --- a/init/Kconfig
> > +++ b/init/Kconfig
> > @@ -1379,6 +1379,7 @@ config BOOT_CONFIG
> > config BOOT_CONFIG_FORCE
> > bool "Force unconditional bootconfig processing"
> > depends on BOOT_CONFIG
> > + default y if BOOT_CONFIG_EMBED
> > help
> > With this Kconfig option set, BOOT_CONFIG processing is carried
> > out even when the "bootconfig" kernel-boot parameter is omitted.
>
> Thanks for your patch, which is now commit 6ded8a28ed80e4cc
> ("bootconfig: Default BOOT_CONFIG_FORCE to y if BOOT_CONFIG_EMBED").
>
> After this change, an all{mod,yes}config kernel has:
>
> CONFIG_BOOT_CONFIG_FORCE=y
> CONFIG_BOOT_CONFIG_EMBED=y
> CONFIG_BOOT_CONFIG_EMBED_FILE=""
>
> Will this actually work? I haven't tried booting such a kernel yet.

Yeah, good question. It is same as when you boot the kernel with 'bootconfig'
but do not add the bootconfig file to initrd. You may see below message
on boot log, but kernel boots normally. :)

'bootconfig' found on command line, but no bootconfig found

(Maybe it is better to fix the message, because if BOOT_CONFIG_FORCE=y, this
will be shown without 'bootconfig' on command line.)

Thank you!

>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
> -- Linus Torvalds


--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>