Re: [PATCH 1/9] kconfig: tinyconfig: provide whole choice blocks to avoid warnings

From: Ingo Molnar
Date: Thu Aug 11 2016 - 05:00:28 EST



* Arnd Bergmann <arnd@xxxxxxxx> wrote:

> Using "make tinyconfig" produces a couple of annoying warnings that show up
> for build test machines all the time:
>
> .config:966:warning: override: NOHIGHMEM changes choice state
> .config:965:warning: override: SLOB changes choice state
> .config:963:warning: override: KERNEL_XZ changes choice state
> .config:962:warning: override: CC_OPTIMIZE_FOR_SIZE changes choice state
> .config:933:warning: override: SLOB changes choice state
> .config:930:warning: override: CC_OPTIMIZE_FOR_SIZE changes choice state
> .config:870:warning: override: SLOB changes choice state
> .config:868:warning: override: KERNEL_XZ changes choice state
> .config:867:warning: override: CC_OPTIMIZE_FOR_SIZE changes choice state
>
> I've made a previous attempt at fixing them and we discussed a number of
> alternatives.
>
> I tried changing the Makefile to use "merge_config.sh -n $(fragment-list)"
> but couldn't get that to work properly.
>
> This is yet another approach, based on the observation that we do want
> to see a warning for conflicting 'choice' options, and that we can simply
> make them non-conflicting by listing all other options as disabled.
> This is a trivial patch that we can apply independent of plans for other
> changes.
>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> Link: https://storage.kernelci.org/mainline/v4.7-rc6/x86-tinyconfig/build.log
> https://patchwork.kernel.org/patch/9212749/
> Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> Cc: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> ---
> This version incorporates feedback from Masahiro Yamada, and includes
> the x86 change that Josh mentioned
>
> Unlike the other patches in this series, this is not a recent regression,
> but it is the only non-regression warning fix I'm aware of that we
> currently need for a clean build on all configurations tested by
> https://kernelci.org/.
> ---
> arch/x86/configs/tiny.config | 2 ++
> kernel/configs/tiny.config | 8 ++++++++
> 2 files changed, 10 insertions(+)
>
> diff --git a/arch/x86/configs/tiny.config b/arch/x86/configs/tiny.config
> index 4e2ecfa23c15..4b429df40d7a 100644
> --- a/arch/x86/configs/tiny.config
> +++ b/arch/x86/configs/tiny.config
> @@ -1 +1,3 @@
> CONFIG_NOHIGHMEM=y
> +# CONFIG_HIGHMEM4G is not set
> +# CONFIG_HIGHMEM64G is not set

Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>

Thanks,

Ingo