mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	kconfig: change sym_change_count to a boolean flag
sym_change_count has no good reason to be 'int' type. sym_set_change_count() compares the old and new values after casting both of them to (bool). I do not see any practical diffrence between sym_set_change_count(1) and sym_add_change_count(1). Use the boolean flag, conf_changed. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
		
							parent
							
								
									1f035a5291
								
							
						
					
					
						commit
						5ee5465940
					
				
					 7 changed files with 18 additions and 24 deletions
				
			
		| 
						 | 
					@ -366,7 +366,7 @@ int conf_read_simple(const char *name, int def)
 | 
				
			||||||
		in = zconf_fopen(name);
 | 
							in = zconf_fopen(name);
 | 
				
			||||||
		if (in)
 | 
							if (in)
 | 
				
			||||||
			goto load;
 | 
								goto load;
 | 
				
			||||||
		sym_add_change_count(1);
 | 
							conf_set_changed(true);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		env = getenv("KCONFIG_DEFCONFIG_LIST");
 | 
							env = getenv("KCONFIG_DEFCONFIG_LIST");
 | 
				
			||||||
		if (!env)
 | 
							if (!env)
 | 
				
			||||||
| 
						 | 
					@ -444,7 +444,7 @@ int conf_read_simple(const char *name, int def)
 | 
				
			||||||
			if (def == S_DEF_USER) {
 | 
								if (def == S_DEF_USER) {
 | 
				
			||||||
				sym = sym_find(line + 2 + strlen(CONFIG_));
 | 
									sym = sym_find(line + 2 + strlen(CONFIG_));
 | 
				
			||||||
				if (!sym) {
 | 
									if (!sym) {
 | 
				
			||||||
					sym_add_change_count(1);
 | 
										conf_set_changed(true);
 | 
				
			||||||
					continue;
 | 
										continue;
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			} else {
 | 
								} else {
 | 
				
			||||||
| 
						 | 
					@ -487,7 +487,7 @@ int conf_read_simple(const char *name, int def)
 | 
				
			||||||
					 */
 | 
										 */
 | 
				
			||||||
					conf_touch_dep(line + strlen(CONFIG_));
 | 
										conf_touch_dep(line + strlen(CONFIG_));
 | 
				
			||||||
				else
 | 
									else
 | 
				
			||||||
					sym_add_change_count(1);
 | 
										conf_set_changed(true);
 | 
				
			||||||
				continue;
 | 
									continue;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -535,7 +535,7 @@ int conf_read(const char *name)
 | 
				
			||||||
	int conf_unsaved = 0;
 | 
						int conf_unsaved = 0;
 | 
				
			||||||
	int i;
 | 
						int i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	sym_set_change_count(0);
 | 
						conf_set_changed(false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (conf_read_simple(name, S_DEF_USER)) {
 | 
						if (conf_read_simple(name, S_DEF_USER)) {
 | 
				
			||||||
		sym_calc_value(modules_sym);
 | 
							sym_calc_value(modules_sym);
 | 
				
			||||||
| 
						 | 
					@ -593,7 +593,8 @@ int conf_read(const char *name)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	sym_add_change_count(conf_warnings || conf_unsaved);
 | 
						if (conf_warnings || conf_unsaved)
 | 
				
			||||||
 | 
							conf_set_changed(true);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -938,7 +939,7 @@ int conf_write(const char *name)
 | 
				
			||||||
		if (is_same(name, tmpname)) {
 | 
							if (is_same(name, tmpname)) {
 | 
				
			||||||
			conf_message("No change to %s", name);
 | 
								conf_message("No change to %s", name);
 | 
				
			||||||
			unlink(tmpname);
 | 
								unlink(tmpname);
 | 
				
			||||||
			sym_set_change_count(0);
 | 
								conf_set_changed(false);
 | 
				
			||||||
			return 0;
 | 
								return 0;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -950,7 +951,7 @@ int conf_write(const char *name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	conf_message("configuration written to %s", name);
 | 
						conf_message("configuration written to %s", name);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	sym_set_change_count(0);
 | 
						conf_set_changed(false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -1118,26 +1119,20 @@ int conf_write_autoconf(int overwrite)
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int sym_change_count;
 | 
					static bool conf_changed;
 | 
				
			||||||
static void (*conf_changed_callback)(void);
 | 
					static void (*conf_changed_callback)(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void sym_set_change_count(int count)
 | 
					void conf_set_changed(bool val)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int _sym_change_count = sym_change_count;
 | 
						if (conf_changed_callback && conf_changed != val)
 | 
				
			||||||
	sym_change_count = count;
 | 
					 | 
				
			||||||
	if (conf_changed_callback &&
 | 
					 | 
				
			||||||
	    (bool)_sym_change_count != (bool)count)
 | 
					 | 
				
			||||||
		conf_changed_callback();
 | 
							conf_changed_callback();
 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
void sym_add_change_count(int count)
 | 
						conf_changed = val;
 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	sym_set_change_count(count + sym_change_count);
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool conf_get_changed(void)
 | 
					bool conf_get_changed(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	return sym_change_count;
 | 
						return conf_changed;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void conf_set_changed_callback(void (*fn)(void))
 | 
					void conf_set_changed_callback(void (*fn)(void))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -45,8 +45,6 @@ const char *zconf_curname(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* confdata.c */
 | 
					/* confdata.c */
 | 
				
			||||||
const char *conf_get_configname(void);
 | 
					const char *conf_get_configname(void);
 | 
				
			||||||
void sym_set_change_count(int count);
 | 
					 | 
				
			||||||
void sym_add_change_count(int count);
 | 
					 | 
				
			||||||
void set_all_choice_values(struct symbol *csym);
 | 
					void set_all_choice_values(struct symbol *csym);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* confdata.c and expr.c */
 | 
					/* confdata.c and expr.c */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,6 +8,7 @@ int conf_read_simple(const char *name, int);
 | 
				
			||||||
int conf_write_defconfig(const char *name);
 | 
					int conf_write_defconfig(const char *name);
 | 
				
			||||||
int conf_write(const char *name);
 | 
					int conf_write(const char *name);
 | 
				
			||||||
int conf_write_autoconf(int overwrite);
 | 
					int conf_write_autoconf(int overwrite);
 | 
				
			||||||
 | 
					void conf_set_changed(bool val);
 | 
				
			||||||
bool conf_get_changed(void);
 | 
					bool conf_get_changed(void);
 | 
				
			||||||
void conf_set_changed_callback(void (*fn)(void));
 | 
					void conf_set_changed_callback(void (*fn)(void));
 | 
				
			||||||
void conf_set_message_callback(void (*fn)(const char *s));
 | 
					void conf_set_message_callback(void (*fn)(const char *s));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -910,7 +910,7 @@ static void conf_load(void)
 | 
				
			||||||
				return;
 | 
									return;
 | 
				
			||||||
			if (!conf_read(dialog_input_result)) {
 | 
								if (!conf_read(dialog_input_result)) {
 | 
				
			||||||
				set_config_filename(dialog_input_result);
 | 
									set_config_filename(dialog_input_result);
 | 
				
			||||||
				sym_set_change_count(1);
 | 
									conf_set_changed(true);
 | 
				
			||||||
				return;
 | 
									return;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			show_textbox(NULL, "File does not exist!", 5, 38);
 | 
								show_textbox(NULL, "File does not exist!", 5, 38);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1408,7 +1408,7 @@ static void conf_load(void)
 | 
				
			||||||
				return;
 | 
									return;
 | 
				
			||||||
			if (!conf_read(dialog_input_result)) {
 | 
								if (!conf_read(dialog_input_result)) {
 | 
				
			||||||
				set_config_filename(dialog_input_result);
 | 
									set_config_filename(dialog_input_result);
 | 
				
			||||||
				sym_set_change_count(1);
 | 
									conf_set_changed(true);
 | 
				
			||||||
				return;
 | 
									return;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			btn_dialog(main_window, "File does not exist!", 0);
 | 
								btn_dialog(main_window, "File does not exist!", 0);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -507,7 +507,7 @@ void conf_parse(const char *name)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if (yynerrs)
 | 
						if (yynerrs)
 | 
				
			||||||
		exit(1);
 | 
							exit(1);
 | 
				
			||||||
	sym_set_change_count(1);
 | 
						conf_set_changed(true);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static bool zconf_endtoken(const char *tokenname,
 | 
					static bool zconf_endtoken(const char *tokenname,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -472,7 +472,7 @@ void sym_clear_all_valid(void)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for_all_symbols(i, sym)
 | 
						for_all_symbols(i, sym)
 | 
				
			||||||
		sym->flags &= ~SYMBOL_VALID;
 | 
							sym->flags &= ~SYMBOL_VALID;
 | 
				
			||||||
	sym_add_change_count(1);
 | 
						conf_set_changed(true);
 | 
				
			||||||
	sym_calc_value(modules_sym);
 | 
						sym_calc_value(modules_sym);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue