[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK7LNASYp+LWyfF78rc3V=ZpR1iu9gZBj4npuE6Md86X0KcWOQ@mail.gmail.com>
Date: Mon, 9 Dec 2024 14:34:47 +0900
From: Masahiro Yamada <masahiroy@...nel.org>
To: Leon Romanovsky <leon@...nel.org>
Cc: linux-kbuild@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH rdma-next] kbuild: Respect request to silent output when
merging configs
On Mon, Dec 9, 2024 at 1:36 AM Leon Romanovsky <leon@...nel.org> wrote:
>
> On Sun, Dec 08, 2024 at 11:49:12PM +0900, Masahiro Yamada wrote:
> > On Wed, Dec 4, 2024 at 5:49 PM Leon Romanovsky <leon@...nel.org> wrote:
> > >
> > > On Wed, Dec 04, 2024 at 05:25:50PM +0900, Masahiro Yamada wrote:
> > > > On Tue, Dec 3, 2024 at 10:55 PM Leon Romanovsky <leon@...nel.org> wrote:
> > > > >
> > > > > From: Leon Romanovsky <leonro@...dia.com>
> > > > >
> > > > > Builds with -s option (silent) are supposed to silence all output
> > > > > which is not an error. It is the case for target builds but not
> > > > > for configs. These builds generate prints like this:
> > > > >
> > > > > ➜ kernel git:(rdma-next) make -s defconfig debug.config
> > > > > Using .config as base
> > > > > Merging ./kernel/configs/debug.config
> > > > > #
> > > > > # merged configuration written to .config (needs make)
> > > > > #
> > > > > ...
> > > > > Value of CONFIG_FUNCTION_TRACER is redefined by fragment ./kernel/configs/debug.config:
> > > > > Previous value: # CONFIG_FUNCTION_TRACER is not set
> > > > > New value: CONFIG_FUNCTION_TRACER=y
> > > > > ----
> > > > >
> > > > > Let's honor -s option and hide all non-error output.
> > > >
> > > >
> > > > Is it necessary to add the --quiet option to every script?
> > > >
> > > > Kbuild already provides a generic way to suppress the stdout
> > > > with 'make -s'.
> > > >
> > > > The following code works for me.
> > > > 'make defconfig debug.config' is as verbose as before.
> > > > 'make -s defconfig debug.config' is really silent.
> > >
> > > This is exactly what I'm doing. I'm using -s option and added -q to very
> > > specific merge_config script, because "-s" is already in use in that
> > > script.
> > >
> > > Before my change on 40384c840ea1 ("Linux 6.13-rc1"):
> > > [leonro@...4d5fa4327 kernel]$ make -s defconfig debug.config
> > > Using .config as base
> > > Merging ./kernel/configs/debug.config
> > > Value of CONFIG_DYNAMIC_DEBUG is redefined by fragment ./kernel/configs/debug.config:
> > > Previous value: # CONFIG_DYNAMIC_DEBUG is not set
> > > New value: CONFIG_DYNAMIC_DEBUG=y
> > >
> > > Value of CONFIG_PRINTK_CALLER is redefined by fragment ./kernel/configs/debug.config:
> > > Previous value: # CONFIG_PRINTK_CALLER is not set
> > > New value: CONFIG_PRINTK_CALLER=y
> > > ...
> > >
> > > After my change:
> > > [leonro@...2c2078dff kernel]$ make -s defconfig debug.config <--- silent
> >
> >
> > Not sure if you checked the attached code diff in my previous reply.
> >
> > To make my question clearer, does this suffice your needs?
> > https://lore.kernel.org/all/20241208144622.605523-1-masahiroy@kernel.org/T/#u
>
> Unfortunately no, as both my development suite and our CI rely on
> merge_config script to create right config.
>
> In CI, they run add very specific config options to already
> well-established .config.
> In my development suite, I'm removing extra options with merge_config
> script.
>
> subprocess.call(cmd + ['defconfig', 'kvm_guest.config', 'nopm.config', 'debug.config'])
> subprocess.call(['scripts/kconfig/merge_config.sh', '-y', '-m', '-q',
> '.config', '/plugins/kernel.config'])
> subprocess.call(cmd + ['olddefconfig'])
>
> https://github.com/Mellanox/mkt/blob/master/plugins/do-build.py#L19
> https://github.com/Mellanox/mkt/commit/26d7cbd776f508ab506f6d33cfe0e9b0bf44d557
>
> I need both chunks, silence make ... and silence merge_config script.
You are no longer talking about 'make -s'.
"> /dev/null" is the standard way to suppress stdout, but you do not use it.
Similarly, subprocess.call() supports stdout=subprocess.DEVNULL
https://docs.python.org/3.13/library/subprocess.html#subprocess.call
> Thanks
>
> >
> >
> > --
> > Best Regards
> > Masahiro Yamada
--
Best Regards
Masahiro Yamada
Powered by blists - more mailing lists