Re: [PATCH v2] RISC-V: Add fragmented config for debug options

From: Anup Patel
Date: Fri Dec 06 2019 - 11:23:23 EST


On Fri, Dec 6, 2019 at 2:31 PM Daniel Thompson
<daniel.thompson@xxxxxxxxxx> wrote:
>
> On Thu, Dec 05, 2019 at 05:49:18PM +0000, Anup Patel wrote:
> > Various Linux kernel DEBUG options have big performance impact so
> > these should not be enabled in RISC-V normal defconfigs.
> >
> > Instead we should have separate RISC-V fragmented config for enabling
> > these DEBUG options. This way Linux RISC-V kernel can be built for
> > both non-debug and debug purposes using same defconfig.
> >
> > This patch moves additional DEBUG options to extra_debug.config.
> >
> > To configure a non-debug RV64 kernel, we use our normal defconfig:
> > $ make O=<linux_build_directory> defconfig
> > Wherease to configure a debug RV64 kernel, we use extra_debug.config:
> > $ make O=<linux_build_directory> defconfig extra_debug.config
> >
> > Signed-off-by: Anup Patel <anup.patel@xxxxxxx>
> > ---
> > Changes since v1:
> > - Use fragmented .config instead of separate debug defconfigs.
> > ---
> > arch/riscv/configs/defconfig | 23 -----------------------
> > arch/riscv/configs/extra_debug.config | 21 +++++++++++++++++++++
>
> Might be better to call this rv_debug.config (or riscv_debug.config),
> This would imply it is a set of options recommended by riscv
> maintainers and also having a suitable prefix means it is less
> likely to ever conflict with .config files in kernel/configs .

Yes, rv_debug.config seems a better name.

I will wait for more comments before renaming it to rv_debug.config

>
> BTW don't respin the patch on my account. Using a .config file was just
> an idea and I'm not sure it reached consensus on the v1 thread.

Not a problem, actually David Abdurachmanov (SiFive) had also
suggested to use fragmented config for debug options.

Actually, we are seeing 12% performance drop in Hackbench by
having DEBUG options enabled by default in normal defconfigs
so we certainly need to move it out of normal defconfigs. Having
fragmented config for DEBUG options is certainly a clean and
maintainable approach that's why I went ahead with your suggestion.

Regards,
Anup