From 8306d2bdcc48718aaa35dfa56b5364d90ea2a1db Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Wed, 15 Oct 2025 23:08:43 -0400 Subject: [PATCH] kern-tools: fix symbol_why for v6.18-rc1+ commit f589e1df23251d8319063da0a61c1016b2a0bf85 (HEAD -> master) Author: Bruce Ashfield Date: Wed Oct 15 18:12:20 2025 -0400 tools/Kconfiglib: add support for transitional attribute We need to update the parser to handle: commit f9afce4f32e9a120fc902fa6c9e0b90ad799a6ec Author: Kees Cook Date: Tue Sep 23 14:34:18 2025 -0700 kconfig: Add transitional symbol attribute for migration support During kernel option migrations (e.g. CONFIG_CFI_CLANG to CONFIG_CFI), existing .config files need to maintain backward compatibility while preventing deprecated options from appearing in newly generated configurations. This is challenging with existing Kconfig mechanisms because: 1. Simply removing old options breaks existing .config files. 2. Manually listing an option as "deprecated" leaves it needlessly visible and still writes them to new .config files. 3. Using any method to remove visibility (.e.g no 'prompt', 'if n', etc) prevents the option from being processed at all. Add a "transitional" attribute that creates symbols which are: - Processed during configuration (can influence other symbols' defaults) - Hidden from user menus (no prompts appear) - Omitted from newly written .config files (gets migrated) - Restricted to only having help sections (no defaults, selects, etc) making it truly just a "prior value pass-through" option. The transitional syntax requires a type argument and prevents type redefinition: config NEW_OPTION bool "New option" default OLD_OPTION config OLD_OPTION bool transitional help Transitional config for OLD_OPTION migration. This allows seamless migration: olddefconfig processes existing CONFIG_OLD_OPTION=y settings to enable CONFIG_NEW_OPTION=y, while CONFIG_OLD_OPTION is omitted from newly generated .config files. Added positive and negative testing via "testconfig" make target. Co-developed-by: Vegard Nossum Signed-off-by: Vegard Nossum Reviewed-by: Nathan Chancellor Tested-by: Nathan Chancellor Link: https://lore.kernel.org/r/20250923213422.1105654-2-kees@kernel.org Signed-off-by: Kees Cook Signed-off-by: Bruce Ashfield Signed-off-by: Richard Purdie --- meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb index 84b8b10a26..9240ee5db8 100644 --- a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +++ b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "\ DEPENDS += "git-replacement-native" -SRCREV = "fe67c98d2e9b74af44d0c4b660fa18e3a95e7edd" +SRCREV = "f589e1df23251d8319063da0a61c1016b2a0bf85" PV = "0.3+git" inherit native -- 2.47.3