Re: [PATCH v2] kconfig: Add transitional symbol attribute for migration support

From: Vegard Nossum
Date: Fri Sep 05 2025 - 05:42:38 EST



On 04/09/2025 19:10, Vegard Nossum wrote:
On 04/09/2025 19:03, Vegard Nossum wrote:
@@ -214,6 +214,11 @@ static void sym_calc_visibility(struct symbol *sym)
         struct property *prop;
         tristate tri;

+       if (sym->flags & SYMBOL_HIDDEN) {
+               sym->visible = yes;

...I just saw the irony here after having already pressed "Send".

Let me explain:

SYMBOL_HIDDEN is your new flag that indicates that somebody used
"transitional" on the config entry.

sym->visible is tristate value that gives you the condition for whether
a symbol can take on a value -- y/m means the option is visible to the
user (hence the name) and thus eligible to have a value assigned to it.

Another small clarification: Replace "is visible to the user" by "can be
set by .config".

Actual user visibility is controlled by menu_is_visible(), not
sym->visible, so my patch still doesn't show transitional symbols to the
user in menuconfig. AFAICT, menu_is_visible() is completely independent
of sym->visible.

I tested menuconfig/mconf and oldconfig/conf --oldconfig with scripts/
kconfig/tests/transitional/Kconfig and my patch and it looks correct
(only the new options are displayed).


Vegard