Skip to content

Commit

Permalink
ktest: Reboot after each patchcheck run
Browse files Browse the repository at this point in the history
The patches being checked may not leave the kernel in a state
that the next run will allow the new kernel to be copied to the
machine. Reboot to a known good kernel before continuing to the
next kernel to test.

Added option PATCHCHECK_SLEEP_TIME for the max time to sleep between
patchcheck reboots.

Signed-off-by: Steven Rostedt <[email protected]>
  • Loading branch information
Steven Rostedt authored and rostedt committed May 20, 2011
1 parent 4025bc6 commit 27d934b
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
13 changes: 13 additions & 0 deletions tools/testing/ktest/ktest.pl
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
$default{"POWEROFF_ON_SUCCESS"} = 0;
$default{"BUILD_OPTIONS"} = "";
$default{"BISECT_SLEEP_TIME"} = 60; # sleep time between bisects
$default{"PATCHCHECK_SLEEP_TIME"} = 60; # sleep time between patch checks
$default{"CLEAR_LOG"} = 0;
$default{"BISECT_MANUAL"} = 0;
$default{"BISECT_SKIP"} = 1;
Expand Down Expand Up @@ -96,6 +97,7 @@
my $monitor_cnt = 0;
my $sleep_time;
my $bisect_sleep_time;
my $patchcheck_sleep_time;
my $store_failures;
my $timeout;
my $booted_timeout;
Expand Down Expand Up @@ -1764,6 +1766,14 @@ sub config_bisect {
success $i;
}

sub patchcheck_reboot {
doprint "Reboot and sleep $patchcheck_sleep_time seconds\n";
reboot;
start_monitor;
wait_for_monitor $patchcheck_sleep_time;
end_monitor;
}

sub patchcheck {
my ($i) = @_;

Expand Down Expand Up @@ -1855,6 +1865,8 @@ sub patchcheck {
end_monitor;
return 0 if ($failed);

patchcheck_reboot;

}
$in_patchcheck = 0;
success $i;
Expand Down Expand Up @@ -2004,6 +2016,7 @@ sub set_test_option {
$poweroff_after_halt = set_test_option("POWEROFF_AFTER_HALT", $i);
$sleep_time = set_test_option("SLEEP_TIME", $i);
$bisect_sleep_time = set_test_option("BISECT_SLEEP_TIME", $i);
$patchcheck_sleep_time = set_test_option("PATCHCHECK_SLEEP_TIME", $i);
$bisect_manual = set_test_option("BISECT_MANUAL", $i);
$bisect_skip = set_test_option("BISECT_SKIP", $i);
$store_failures = set_test_option("STORE_FAILURES", $i);
Expand Down
4 changes: 4 additions & 0 deletions tools/testing/ktest/sample.conf
Original file line number Diff line number Diff line change
Expand Up @@ -366,6 +366,10 @@
# (default 60)
#BISECT_SLEEP_TIME = 60

# The time in between patch checks to sleep (in seconds)
# (default 60)
#PATCHCHECK_SLEEP_TIME = 60

# Reboot the target box on error (default 0)
#REBOOT_ON_ERROR = 0

Expand Down

0 comments on commit 27d934b

Please sign in to comment.