public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/9] configs: cleanup obsolete or incorrect assignments
@ 2026-03-17  9:13 Vincent Mailhol (Arm)
  2026-03-17  9:13 ` [PATCH 1/9] scripts: kconfig: merge_config.sh: use POSIX '=' in test Vincent Mailhol (Arm)
                   ` (8 more replies)
  0 siblings, 9 replies; 24+ messages in thread
From: Vincent Mailhol (Arm) @ 2026-03-17  9:13 UTC (permalink / raw)
  To: Nathan Chancellor, Nicolas Schier, Mikko Rapeli,
	Richard Henderson, Matt Turner, Magnus Lindholm, Russell King,
	Aaro Koskinen, Andreas Kemnade, Kevin Hilman, Roger Quadros,
	Tony Lindgren, Huacai Chen, WANG Xuerui, Thomas Bogendoerfer,
	Madhavan Srinivasan, Michael Ellerman, Nicholas Piggin,
	Christophe Leroy (CS GROUP), Paul Walmsley, Palmer Dabbelt,
	Albert Ou, Alexandre Ghiti, Heiko Carstens, Vasily Gorbik,
	Alexander Gordeev, Christian Borntraeger, Sven Schnelle,
	Yoshinori Sato, Rich Felker, John Paul Adrian Glaubitz,
	Thomas Gleixner, Ingo Molnar, Borislav Petkov, Dave Hansen, x86,
	H. Peter Anvin, Sebastian Andrzej Siewior, Clark Williams,
	Steven Rostedt, Pablo Neira Ayuso, Krzysztof Kozlowski,
	Alim Akhtar, Frank Li, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam, Vladimir Zapolskiy, Piotr Wojtaszczyk, Liviu Dudau,
	Sudeep Holla, Lorenzo Pieralisi, Geert Uytterhoeven, Magnus Damm,
	Vladimir Kondratiev, Gregory CLEMENT, Théo Lebrun,
	James E.J. Bottomley, Helge Deller, Janusz Krzysztofik,
	Jonathan Neuschäfer, Chris Zankel, Max Filippov,
	Thomas Zimmermann, Arnd Bergmann, Heiko Stuebner,
	Kuninori Morimoto, Mark Brown, Eric Biggers, Ard Biesheuvel,
	Sricharan Ramabadhran, Bjorn Andersson, Michael Walle,
	Guenter Roeck, Srinivas Kandagatla, Rob Herring (Arm),
	Dmitry Baryshkov, Greg Kroah-Hartman, Anna Schumaker
  Cc: Alexandre Gonzalo, linux-kbuild, linux-kernel, linux-alpha,
	linux-arm-kernel, linux-omap, loongarch, linux-mips, linuxppc-dev,
	linux-riscv, linux-s390, linux-sh, linux-rt-devel,
	linux-samsung-soc, imx, linux-renesas-soc, linux-parisc, openbmc,
	Vincent Mailhol (Arm)

The arm64 defconfig contains several inconsistencies, as shown by the
following merge_config warnings:

  $ ARCH=arm64 ./scripts/kconfig/merge_config.sh arch/arm64/configs/defconfig
  Using arch/arm64/configs/defconfig as base
  #
  # configuration written to .config
  #
  WARNING: Value requested for CONFIG_NETFILTER_XT_TARGET_CHECKSUM not in final .config
  Requested value: CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
  Actual value:
  WARNING: Value requested for CONFIG_IP_NF_FILTER not in final .config
  Requested value: CONFIG_IP_NF_FILTER=m
  Actual value:
  WARNING: Value requested for CONFIG_IP_NF_TARGET_REJECT not in final .config
  Requested value: CONFIG_IP_NF_TARGET_REJECT=m
  Actual value:
  WARNING: Value requested for CONFIG_IP_NF_NAT not in final .config
  Requested value: CONFIG_IP_NF_NAT=m
  Actual value:
  WARNING: Value requested for CONFIG_IP_NF_TARGET_MASQUERADE not in final .config
  Requested value: CONFIG_IP_NF_TARGET_MASQUERADE=m
  Actual value:
  WARNING: Value requested for CONFIG_IP_NF_MANGLE not in final .config
  Requested value: CONFIG_IP_NF_MANGLE=m
  Actual value:
  WARNING: Value requested for CONFIG_IP6_NF_FILTER not in final .config
  Requested value: CONFIG_IP6_NF_FILTER=m
  Actual value:
  WARNING: Value requested for CONFIG_IP6_NF_TARGET_REJECT not in final .config
  Requested value: CONFIG_IP6_NF_TARGET_REJECT=m
  Actual value:
  WARNING: Value requested for CONFIG_IP6_NF_MANGLE not in final .config
  Requested value: CONFIG_IP6_NF_MANGLE=m
  Actual value:
  WARNING: Value requested for CONFIG_IP6_NF_NAT not in final .config
  Requested value: CONFIG_IP6_NF_NAT=m
  Actual value:
  WARNING: Value requested for CONFIG_IP6_NF_TARGET_MASQUERADE not in final .config
  Requested value: CONFIG_IP6_NF_TARGET_MASQUERADE=m
  Actual value:
  WARNING: Value requested for CONFIG_SENSORS_SA67MCU not in final .config
  Requested value: CONFIG_SENSORS_SA67MCU=m
  Actual value:
  WARNING: Value requested for CONFIG_FB_MODE_HELPERS not in final .config
  Requested value: CONFIG_FB_MODE_HELPERS=y
  Actual value:
  WARNING: Value requested for CONFIG_SND_SOC_ROCKCHIP not in final .config
  Requested value: CONFIG_SND_SOC_ROCKCHIP=m
  Actual value:
  WARNING: Value requested for CONFIG_IPQ_APSS_5018 not in final .config
  Requested value: CONFIG_IPQ_APSS_5018=y
  Actual value:
  WARNING: Value requested for CONFIG_SLIM_QCOM_CTRL not in final .config
  Requested value: CONFIG_SLIM_QCOM_CTRL=m
  Actual value:
  WARNING: Value requested for CONFIG_NFS_V4_1 not in final .config
  Requested value: CONFIG_NFS_V4_1=y
  Actual value:
  WARNING: CONFIG_CRYPTO_SHA3 differs:
  Requested value: CONFIG_CRYPTO_SHA3=m
  Actual value:    CONFIG_CRYPTO_SHA3=y
  ./scripts/kconfig/merge_config.sh: 384: [: false: unexpected operator

The issues fall into several categories:

  - assignments to removed or renamed configuration symbols.

  - assignments to symbols that became hidden or internal.

  - assignments that are requested as module (=m) but which have a
    built-in parent dependency (=y).

This series cleans up all those issues. While the focus is the arm64
defconfig, fixes that apply more broadly are extended treewide.

After applying this series, merge_config.sh runs without warnings on
the arm64 defconfig. Below script was used to confirm that no symbols
got inadvertently removed:

  #!/bin/sh

  DIR=$(mktemp -d)

  # Generate conf before this series
  git checkout $(git merge-base HEAD @{upstream})
  for arch in arch/*/; do
      for conf in "$arch"configs/*defconfig; do
        ARCH=$(basename $arch) \
        KCONFIG_CONFIG="$DIR/$(basename $arch)_$(basename $conf)_before" \
            ./scripts/kconfig/merge_config.sh $conf
      done
  done

  # Generate conf after this series
  git checkout -
  for arch in arch/*/; do
      for conf in "$arch"configs/*defconfig; do
        ARCH=$(basename $arch) \
        KCONFIG_CONFIG="$DIR/$(basename $arch)_$(basename $conf)_after" \
            ./scripts/kconfig/merge_config.sh $conf
      done
  done

  # Compare
  for arch in arch/*/; do
      for conf in "$arch"configs/*defconfig; do
        if diff --unified \
                "$DIR/$(basename $arch)_$(basename $conf)_before" \
                "$DIR/$(basename $arch)_$(basename $conf)_after"; then
            echo "$conf: OK"
        else
            echo "$conf: configuration changed"
        fi
      done
  done

Signed-off-by: Vincent Mailhol (Arm) <mailhol@kernel.org>
---
Vincent Mailhol (Arm) (9):
      scripts: kconfig: merge_config.sh: use POSIX '=' in test
      configs: remove orphan dependencies of NETFILTER_XTABLES_LEGACY
      configs: remove obsolete assignments to CONFIG_NFS_V4_1
      configs: remove implicit assignments to FB_MODE_HELPERS
      arm: configs: remove obsolete assignments to SND_SOC_ROCKCHIP
      arm64: defconfig: remove implicit assignment to CRYPTO_SHA3
      arm64: defconfig: remove incorrect assignment to IPQ_APSS_5018
      arm64: defconfig: remove obsolete assignment to SENSORS_SA67MCU
      arm64: defconfig: remove obsolete assignment to SLIM_QCOM_CTRL

 arch/alpha/configs/defconfig                |  1 -
 arch/arm/configs/am200epdkit_defconfig      |  1 -
 arch/arm/configs/collie_defconfig           |  1 -
 arch/arm/configs/ep93xx_defconfig           |  1 -
 arch/arm/configs/exynos_defconfig           |  1 -
 arch/arm/configs/imx_v6_v7_defconfig        |  2 --
 arch/arm/configs/ixp4xx_defconfig           |  3 ---
 arch/arm/configs/keystone_defconfig         |  3 ---
 arch/arm/configs/lpc18xx_defconfig          |  1 -
 arch/arm/configs/lpc32xx_defconfig          |  2 --
 arch/arm/configs/mps2_defconfig             |  1 -
 arch/arm/configs/multi_v7_defconfig         |  2 --
 arch/arm/configs/mxs_defconfig              |  1 -
 arch/arm/configs/omap1_defconfig            |  1 -
 arch/arm/configs/omap2plus_defconfig        |  1 -
 arch/arm/configs/shmobile_defconfig         |  1 -
 arch/arm/configs/spitz_defconfig            |  4 ----
 arch/arm/configs/wpcm450_defconfig          |  1 -
 arch/arm64/configs/defconfig                | 18 ------------------
 arch/loongarch/configs/loongson32_defconfig |  1 -
 arch/loongarch/configs/loongson64_defconfig |  1 -
 arch/mips/configs/bmips_stb_defconfig       |  2 --
 arch/mips/configs/cavium_octeon_defconfig   |  1 -
 arch/mips/configs/db1xxx_defconfig          |  1 -
 arch/mips/configs/eyeq5_defconfig           |  1 -
 arch/mips/configs/eyeq6_defconfig           |  1 -
 arch/mips/configs/fuloong2e_defconfig       |  3 ---
 arch/mips/configs/generic_defconfig         |  1 -
 arch/mips/configs/gpr_defconfig             |  3 ---
 arch/mips/configs/ip22_defconfig            |  6 ------
 arch/mips/configs/lemote2f_defconfig        |  1 -
 arch/mips/configs/loongson2k_defconfig      |  3 ---
 arch/mips/configs/loongson3_defconfig       | 11 -----------
 arch/mips/configs/malta_defconfig           |  6 ------
 arch/mips/configs/malta_kvm_defconfig       |  6 ------
 arch/mips/configs/maltaup_xpa_defconfig     |  6 ------
 arch/mips/configs/mtx1_defconfig            |  6 ------
 arch/mips/configs/rb532_defconfig           |  3 ---
 arch/mips/configs/rm200_defconfig           |  6 ------
 arch/mips/configs/rt305x_defconfig          |  3 ---
 arch/mips/configs/xway_defconfig            |  3 ---
 arch/parisc/configs/generic-64bit_defconfig |  1 -
 arch/powerpc/configs/85xx/stx_gp3_defconfig |  1 -
 arch/powerpc/configs/cell_defconfig         |  3 ---
 arch/powerpc/configs/linkstation_defconfig  |  3 ---
 arch/powerpc/configs/mvme5100_defconfig     |  3 ---
 arch/powerpc/configs/pmac32_defconfig       |  3 ---
 arch/powerpc/configs/ppc6xx_defconfig       |  6 ------
 arch/riscv/configs/defconfig                |  9 ---------
 arch/sh/configs/titan_defconfig             |  6 ------
 arch/x86/configs/i386_defconfig             |  7 -------
 arch/x86/configs/x86_64_defconfig           |  7 -------
 arch/xtensa/configs/virt_defconfig          |  1 -
 scripts/kconfig/merge_config.sh             |  2 +-
 54 files changed, 1 insertion(+), 172 deletions(-)
---
base-commit: f338e77383789c0cae23ca3d48adcc5e9e137e3c
change-id: 20260312-arm_defconf_cleanup-cd17f4ba989d

Best regards,
-- 
Vincent Mailhol (Arm) <mailhol@kernel.org>


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2026-03-25 12:44 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-17  9:13 [PATCH 0/9] configs: cleanup obsolete or incorrect assignments Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 1/9] scripts: kconfig: merge_config.sh: use POSIX '=' in test Vincent Mailhol (Arm)
2026-03-17  9:30   ` Mikko Rapeli
2026-03-25 10:33     ` Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 2/9] configs: remove orphan dependencies of NETFILTER_XTABLES_LEGACY Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 3/9] configs: remove obsolete assignments to CONFIG_NFS_V4_1 Vincent Mailhol (Arm)
2026-03-17 15:23   ` Théo Lebrun
2026-03-17 15:53   ` Geert Uytterhoeven
2026-03-17  9:13 ` [PATCH 4/9] configs: remove implicit assignments to FB_MODE_HELPERS Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 5/9] arm: configs: remove obsolete assignments to SND_SOC_ROCKCHIP Vincent Mailhol (Arm)
2026-03-17 11:28   ` Krzysztof Kozlowski
2026-03-25 11:27     ` Vincent Mailhol (Arm)
2026-03-25 12:42       ` Krzysztof Kozlowski
2026-03-17  9:13 ` [PATCH 6/9] arm64: defconfig: remove implicit assignment to CRYPTO_SHA3 Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 7/9] arm64: defconfig: remove incorrect assignment to IPQ_APSS_5018 Vincent Mailhol (Arm)
2026-03-17 11:31   ` Krzysztof Kozlowski
2026-03-25 11:30     ` Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 8/9] arm64: defconfig: remove obsolete assignment to SENSORS_SA67MCU Vincent Mailhol (Arm)
2026-03-17 11:33   ` Krzysztof Kozlowski
2026-03-25 11:31     ` Vincent Mailhol (Arm)
2026-03-17  9:13 ` [PATCH 9/9] arm64: defconfig: remove obsolete assignment to SLIM_QCOM_CTRL Vincent Mailhol (Arm)
2026-03-17 11:35   ` Krzysztof Kozlowski
2026-03-25 11:31     ` Vincent Mailhol (Arm)
2026-03-25 12:44       ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox