Subject: Re: [PATCH] bootconfig: Fix CONFIG_BOOTTIME_TRACING dependency issue

From: Masami Hiramatsu <[email-masked]>
Date: Fri, 28 Feb 2020 01:38:41 +0900

On Thu, 27 Feb 2020 15:33:44 +0100
Geert Uytterhoeven <[email-masked]> wrote:

> Hi Steven,
> 
> On Thu, Feb 27, 2020 at 3:25 PM Steven Rostedt <[email-masked]> wrote:
> > On Thu, 27 Feb 2020 10:18:08 +0100
> > Geert Uytterhoeven <[email-masked]> wrote:
> > > On Tue, Feb 25, 2020 at 4:47 PM Masami Hiramatsu <[email-masked]> wrote:
> > > > Since commit d8a953ddde5e ("bootconfig: Set CONFIG_BOOT_CONFIG=n by
> > > > default") also changed the CONFIG_BOOTTIME_TRACING to select
> > > > CONFIG_BOOT_CONFIG to show the boot-time tracing on the menu,
> > > > it introduced wrong dependencies with BLK_DEV_INITRD as below.
> > > >
> > > > WARNING: unmet direct dependencies detected for BOOT_CONFIG
> > > >   Depends on [n]: BLK_DEV_INITRD [=n]
> > > >   Selected by [y]:
> > > >   - BOOTTIME_TRACING [=y] && TRACING_SUPPORT [=y] && FTRACE [=y] && TRACING [=y]
> > > >
> > > > This makes the CONFIG_BOOT_CONFIG selects CONFIG_BLK_DEV_INITRD to
> > > > fix this error and make CONFIG_BOOTTIME_TRACING=n by default, so
> > > > that both boot-time tracing and boot configuration off but those
> > > > appear on the menu list.
> > > >
> > > > Fixes: d8a953ddde5e ("bootconfig: Set CONFIG_BOOT_CONFIG=n by default")
> > > > Reported-by: Randy Dunlap <[email-masked]>
> > > > Signed-off-by: Masami Hiramatsu <[email-masked]>
> > > > ---
> > > >  init/Kconfig         |    2 +-
> > > >  kernel/trace/Kconfig |    1 -
> > > >  2 files changed, 1 insertion(+), 2 deletions(-)
> > > >
> > > > diff --git a/init/Kconfig b/init/Kconfig
> > > > index a84e7aa89a29..8b4c3e8c05ea 100644
> > > > --- a/init/Kconfig
> > > > +++ b/init/Kconfig
> > > > @@ -1217,7 +1217,7 @@ endif
> > > >
> > > >  config BOOT_CONFIG
> > > >         bool "Boot config support"
> > > > -       depends on BLK_DEV_INITRD
> > > > +       select BLK_DEV_INITRD
> > > >         help
> > > >           Extra boot config allows system admin to pass a config file as
> > > >           complemental extension of kernel cmdline when booting.
> > > > diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
> > > > index 795c3e02d3f1..402eef84c859 100644
> > > > --- a/kernel/trace/Kconfig
> > > > +++ b/kernel/trace/Kconfig
> > > > @@ -145,7 +145,6 @@ config BOOTTIME_TRACING
> > > >         bool "Boot-time Tracing support"
> > > >         depends on TRACING
> > >
> > > Why not "depends on BLK_DEV_INITRD?" here?
> > >
> > > /me tries to contain the bloat introduced by the bootconfig stuff.
> >
> > Because people like me will be scratching my head trying to figure out why
> > I don't see Boot-time Tracing support ;-)
> 
> AFAIUI, without using an initrd, your fancy bootconfig cannot be appended
> anywhere anyway?

Hm, this is a good motivation for me to find a way to append the bootconfig
to kernel image itself. :)

Thank you,

-- 
Masami Hiramatsu <[email-masked]>