linux-kbuild.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Masahiro Yamada <masahiroy@kernel.org>
To: Nick Desaulniers <ndesaulniers@google.com>
Cc: Guenter Roeck <linux@roeck-us.net>,
	Tiezhu Yang <yangtiezhu@loongson.cn>,
	Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	David Howells <dhowells@redhat.com>,
	Johannes Weiner <hannes@cmpxchg.org>,
	KP Singh <kpsingh@google.com>, Kees Cook <keescook@chromium.org>,
	Nathan Chancellor <nathan@kernel.org>,
	Nick Terrell <terrelln@fb.com>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Vlastimil Babka <vbabka@suse.cz>,
	LKML <linux-kernel@vger.kernel.org>,
	linux-mips@vger.kernel.org
Subject: Re: [PATCH 11/13] kconfig: do not use allnoconfig_y option
Date: Wed, 7 Apr 2021 21:02:06 +0900	[thread overview]
Message-ID: <CAK7LNARjBJ4GqXyy7=fT1SSqTDYm4se6ahegvFb1-RuY48N3oA@mail.gmail.com> (raw)
In-Reply-To: <CAKwvOdmNUMJTjyc7hAhNRzmWmRQa5TCayTSpwiiVnO4HH-YTOQ@mail.gmail.com>

On Thu, Apr 1, 2021 at 3:25 AM Nick Desaulniers <ndesaulniers@google.com> wrote:
>
> On Wed, Mar 31, 2021 at 10:12 AM Guenter Roeck <linux@roeck-us.net> wrote:
> >
> > On Sun, Mar 14, 2021 at 04:48:34AM +0900, Masahiro Yamada wrote:
> > > allnoconfig_y is a bad hack that sets a symbol to 'y' by allnoconfig.
> > >
> > > allnoconfig does not mean a minimum set of CONFIG options because a
> > > bunch of prompts are hidden by 'if EMBEDDED' or 'if EXPERT', but I do
> > > not like to do a workaround this way.
> > >
> > > Use the pre-existing feature, KCONFIG_ALLCONFIG, to provide a one
> > > liner config fragment. CONFIG_EMBEDDED=y is still forced under
> > > allnoconfig.
> > >
> > > No change in the .config file produced by 'make tinyconfig'.
> > >
> > > The output of 'make allnoconfig' will be changed; we will get
> > > CONFIG_EMBEDDED=n because allnoconfig literally sets all symbols to n.
> > >
> > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> >
> > With this patch in place, mips:allnoconfig fails to build with
> > the following error.
> >
> > Error log:
> > WARNING: modpost: vmlinux.o(.text+0x9c70): Section mismatch in reference from the function reserve_exception_space() to the function .meminit.text:memblock_reserve()
> > The function reserve_exception_space() references
> > the function __meminit memblock_reserve().
> > This is often because reserve_exception_space lacks a __meminit
> > annotation or the annotation of memblock_reserve is wrong.
> > ERROR: modpost: Section mismatches detected.
> > Set CONFIG_SECTION_MISMATCH_WARN_ONLY=y to allow them.
> > make[2]: *** [scripts/Makefile.modpost:62: vmlinux.symvers] Error 1
> > make[2]: *** Deleting file 'vmlinux.symvers'
> > make[1]: *** [Makefile:1292: vmlinux] Error 2
> > make: *** [Makefile:222: __sub-make] Error 2
>
> Thanks for the report. I suspect this is related to allnoconfig
> disabling CONFIG_ARCH_KEEP_MEMBLOCK, which changes the definition of
> __init_memblock in include/linux/memblock.h.
>
> So allnoconfig would unselect CONFIG_ARCH_KEEP_MEMBLOCK, making
> __init_memblock equivalent to __meminit triggering the above warning.
>
> arch/mips/Kconfig
> 14:     select ARCH_KEEP_MEMBLOCK if DEBUG_KERNEL
>
> so DEBUG_KERNEL is probably also disabled by allnoconfig.
>
> commit a8c0f1c634507 ("MIPS: Select ARCH_KEEP_MEMBLOCK if DEBUG_KERNEL
> to enable sysfs memblock debug")
>
> probably should drop the `if DEBUG_KERNEL` part.


Thanks.
Could you please send a patch to mips ML?




> >
> > Guenter
> >
> > > ---
> > >
> > >  init/Kconfig                    | 1 -
> > >  kernel/configs/tiny-base.config | 1 +
> > >  scripts/kconfig/Makefile        | 3 ++-
> > >  3 files changed, 3 insertions(+), 2 deletions(-)
> > >  create mode 100644 kernel/configs/tiny-base.config
> > >
> > > diff --git a/init/Kconfig b/init/Kconfig
> > > index 46b87ad73f6a..beb8314fdf96 100644
> > > --- a/init/Kconfig
> > > +++ b/init/Kconfig
> > > @@ -1769,7 +1769,6 @@ config DEBUG_RSEQ
> > >
> > >  config EMBEDDED
> > >       bool "Embedded system"
> > > -     option allnoconfig_y
> > >       select EXPERT
> > >       help
> > >         This option should be enabled if compiling the kernel for
> > > diff --git a/kernel/configs/tiny-base.config b/kernel/configs/tiny-base.config
> > > new file mode 100644
> > > index 000000000000..2f0e6bf6db2c
> > > --- /dev/null
> > > +++ b/kernel/configs/tiny-base.config
> > > @@ -0,0 +1 @@
> > > +CONFIG_EMBEDDED=y
> > > diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
> > > index 7df3c0e4c52e..46f2465177f0 100644
> > > --- a/scripts/kconfig/Makefile
> > > +++ b/scripts/kconfig/Makefile
> > > @@ -102,7 +102,8 @@ configfiles=$(wildcard $(srctree)/kernel/configs/$@ $(srctree)/arch/$(SRCARCH)/c
> > >
> > >  PHONY += tinyconfig
> > >  tinyconfig:
> > > -     $(Q)$(MAKE) -f $(srctree)/Makefile allnoconfig tiny.config
> > > +     $(Q)KCONFIG_ALLCONFIG=kernel/configs/tiny-base.config $(MAKE) -f $(srctree)/Makefile allnoconfig
> > > +     $(Q)$(MAKE) -f $(srctree)/Makefile tiny.config
> > >
> > >  # CHECK: -o cache_dir=<path> working?
> > >  PHONY += testconfig
> > > --
> > > 2.27.0
> > >
>
>
>
> --
> Thanks,
> ~Nick Desaulniers



-- 
Best Regards
Masahiro Yamada

  parent reply	other threads:[~2021-04-07 12:03 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-13 19:48 [PATCH 01/13] kconfig: split randconfig setup code into set_randconfig_seed() Masahiro Yamada
2021-03-13 19:48 ` [PATCH 02/13] kconfig: refactor option parse Masahiro Yamada
2021-03-13 19:48 ` [PATCH 03/13] kconfig: add long options --help and --silent Masahiro Yamada
2021-03-13 19:48 ` [PATCH 04/13] kconfig: add help messages for --help (-h) and --silent (-s) Masahiro Yamada
2021-03-13 19:48 ` [PATCH 05/13] kconfig: remove assignment for Kconfig file Masahiro Yamada
2021-03-13 19:48 ` [PATCH 06/13] kconfig: move conf_rewrite_mod_or_yes() to conf.c Masahiro Yamada
2021-03-13 19:48 ` [PATCH 07/13] kconfig: move conf_set_all_new_symbols() " Masahiro Yamada
2021-03-15 10:07   ` Boris Kolpackov
2021-03-15 16:02     ` Masahiro Yamada
2021-03-13 19:48 ` [PATCH 08/13] kconfig: move JUMP_NB to mconf.c Masahiro Yamada
2021-03-13 19:48 ` [PATCH 09/13] kconfig: change defconfig_list option to environment variable Masahiro Yamada
2021-03-13 19:48 ` [PATCH 10/13] kconfig: move default KBUILD_DEFCONFIG back to scripts/kconfig/Makefile Masahiro Yamada
2021-03-13 19:48 ` [PATCH 11/13] kconfig: do not use allnoconfig_y option Masahiro Yamada
2021-03-31 17:12   ` Guenter Roeck
2021-03-31 18:25     ` Nick Desaulniers
2021-04-05 14:56       ` Guenter Roeck
2021-04-07 12:02       ` Masahiro Yamada [this message]
2021-03-13 19:48 ` [PATCH 12/13] kconfig: remove " Masahiro Yamada
2021-03-13 19:48 ` [PATCH 13/13] kconfig: change "modules" from sub-option to first-level attribute Masahiro Yamada
2021-03-25  4:47 ` [PATCH 01/13] kconfig: split randconfig setup code into set_randconfig_seed() Masahiro Yamada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAK7LNARjBJ4GqXyy7=fT1SSqTDYm4se6ahegvFb1-RuY48N3oA@mail.gmail.com' \
    --to=masahiroy@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=dhowells@redhat.com \
    --cc=hannes@cmpxchg.org \
    --cc=keescook@chromium.org \
    --cc=kpsingh@google.com \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=nathan@kernel.org \
    --cc=ndesaulniers@google.com \
    --cc=terrelln@fb.com \
    --cc=valentin.schneider@arm.com \
    --cc=vbabka@suse.cz \
    --cc=yangtiezhu@loongson.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).