Re: [PATCH bootconfig 2/3] fs/proc: Add boot loader arguments as comment to /proc/bootconfig

From: Google
Date: Fri Oct 06 2023 - 21:42:19 EST


On Fri, 6 Oct 2023 09:52:30 -0700
"Paul E. McKenney" <paulmck@xxxxxxxxxx> wrote:

> On Fri, Oct 06, 2023 at 05:59:48PM +0900, Masami Hiramatsu wrote:
> > On Thu, 5 Oct 2023 10:17:46 -0700
> > "Paul E. McKenney" <paulmck@xxxxxxxxxx> wrote:
> >
> > > In kernels built with CONFIG_BOOT_CONFIG_FORCE=y, /proc/cmdline will
> > > show all kernel boot parameters, both those supplied by the boot loader
> > > and those embedded in the kernel image. This works well for those who
> > > just want to see all of the kernel boot parameters, but is not helpful to
> > > those who need to see only those parameters supplied by the boot loader.
> > > This is especially important when these parameters are presented to the
> > > boot loader by automation that might gather them from diverse sources.
> > > It is also useful when booting the next kernel via kexec(), in which
> > > case it is necessary to supply only those kernel command-line arguments
> > > from the boot loader, and most definitely not those that were embedded
> > > into the current kernel.
> > >
> > > Therefore, add comments to /proc/bootconfig of the form:
> > >
> > > # Parameters from bootloader:
> > > # root=UUID=ac0f0548-a69d-43ca-a06b-7db01bcbd5ad ro quiet ...
> > >
> > > The second added line shows only those kernel boot parameters supplied
> > > by the boot loader.
> >
> > Thanks for update it.
> >
> > This looks good to me.
> >
> > Acked-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>
> >
> > Thank you!
>
> And thank you! I take this as meaning that I should push these three
> commits for the upcoming v6.7 merge window. Please let me know if I
> should be doing something else.

I have my bootconfig branch, so I think I should pick this and push it
to the next window. Does it work?

Thank you,

>
> Thanx, Paul
>
> > > Link: https://lore.kernel.org/all/CAHk-=wjpVAW3iRq_bfKnVfs0ZtASh_aT67bQBG11b4W6niYVUw@xxxxxxxxxxxxxx/
> > > Link: https://lore.kernel.org/all/20230731233130.424913-1-paulmck@xxxxxxxxxx/
> > > Co-developed-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> > > Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> > > Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
> > > Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
> > > Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> > > Cc: Arnd Bergmann <arnd@xxxxxxxxxx>
> > > Cc: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
> > > Cc: Alexey Dobriyan <adobriyan@xxxxxxxxx>
> > > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > > Cc: Kees Cook <keescook@xxxxxxxxxxxx>
> > > Cc: <linux-trace-kernel@xxxxxxxxxxxxxxx>
> > > Cc: <linux-fsdevel@xxxxxxxxxxxxxxx>
> > > ---
> > > fs/proc/bootconfig.c | 6 ++++++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/fs/proc/bootconfig.c b/fs/proc/bootconfig.c
> > > index 2e244ada1f97..902b326e1e56 100644
> > > --- a/fs/proc/bootconfig.c
> > > +++ b/fs/proc/bootconfig.c
> > > @@ -62,6 +62,12 @@ static int __init copy_xbc_key_value_list(char *dst, size_t size)
> > > break;
> > > dst += ret;
> > > }
> > > + if (ret >= 0 && boot_command_line[0]) {
> > > + ret = snprintf(dst, rest(dst, end), "# Parameters from bootloader:\n# %s\n",
> > > + boot_command_line);
> > > + if (ret > 0)
> > > + dst += ret;
> > > + }
> > > }
> > > out:
> > > kfree(key);
> > > --
> > > 2.40.1
> > >
> >
> >
> > --
> > Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>


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