ktest: Keep fonud configs separate from default configs

The IGNORE_CONFIG file holds the configs that we don't want to change
(with their proper settings). But on start up, the make noconfig is
executed, and the configs that are on are also put into the ignore
config category. But these are configs that were forced on by the
kconfig scripts and not something that we found must be enabled to boot
our machine. By keeping the configs that are forced on by default,
separate from the configs we found that are required to boot the box, we
can get a much more interesting IGNORE_CONFIG. In fact, the
IGNORE_CONFIG can usually end up being the must have configs to boot,
and only have 6 or 7 configs set.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
Steven Rostedt 2011-07-15 22:01:56 -04:00 committed by Steven Rostedt
parent 35ce5952e6
commit 43d1b6518e

View file

@ -2405,6 +2405,7 @@ sub get_depends {
my %min_configs;
my %keep_configs;
my %save_configs;
my %processed_configs;
my %nochange_config;
@ -2496,15 +2497,17 @@ sub make_min_config {
process_config_ignore $output_config;
undef %keep_configs;
undef %save_configs;
undef %min_configs;
if (defined($ignore_config)) {
# make sure the file exists
`touch $ignore_config`;
assign_configs \%keep_configs, $ignore_config;
assign_configs \%save_configs, $ignore_config;
}
%keep_configs = %save_configs;
doprint "Load initial configs from $start_minconfig\n";
# Look at the current min configs, and save off all the
@ -2614,14 +2617,15 @@ sub make_min_config {
doprint "$min_configs{$config} is needed to boot the box... keeping\n";
# this config is needed, add it to the ignore list.
$keep_configs{$config} = $min_configs{$config};
$save_configs{$config} = $min_configs{$config};
delete $min_configs{$config};
# update new ignore configs
if (defined($ignore_config)) {
open (OUT, ">$temp_config")
or die "Can't write to $temp_config";
foreach my $config (keys %keep_configs) {
print OUT "$keep_configs{$config}\n";
foreach my $config (keys %save_configs) {
print OUT "$save_configs{$config}\n";
}
close OUT;
run_command "mv $temp_config $ignore_config" or