kconfig: Invalidate all symbols after changing to y or m.
authorTetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Tue, 4 Feb 2020 04:08:44 +0000 (13:08 +0900)
committerChristian Lamparter <chunkeey@gmail.com>
Fri, 5 Feb 2021 10:53:22 +0000 (11:53 +0100)
Since commit 89b9060987d9 ("kconfig: Add yes2modconfig and
mod2yesconfig targets.") forgot to clear SYMBOL_VALID bit after
changing to y or m, these targets did not save the changes.
Call sym_clear_all_valid() so that all symbols are revalidated.

Fixes: 89b9060987d9 ("kconfig: Add yes2modconfig and mod2yesconfig targets.")
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
config/confdata.c

index ba66634208a3214c37be4ad937d9312aaa829e9e..d635eff8b8390385474f5f9128866727eb902286 100644 (file)
@@ -1399,9 +1399,8 @@ void conf_rewrite_mod_or_yes(enum conf_def_mode mode)
 
        for_all_symbols(i, sym) {
                if (sym_get_type(sym) == S_TRISTATE &&
-                   sym->def[S_DEF_USER].tri == old_val) {
+                   sym->def[S_DEF_USER].tri == old_val)
                        sym->def[S_DEF_USER].tri = new_val;
-                       sym_add_change_count(1);
-               }
        }
+       sym_clear_all_valid();
 }