ktest: Ignore warnings during reboot
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>
Tue, 5 Feb 2013 14:56:00 +0000 (09:56 -0500)
committerSteven Rostedt <rostedt@goodmis.org>
Tue, 5 Feb 2013 15:02:37 +0000 (10:02 -0500)
The reboot just wants to get to the next kernel. But if a warning (Call
Trace) appears, the monitor will report an error, and the reboot will
think something went wrong and power cycle the box, even though we
successfully made it to the next kernel.

Ignore warnings during the reboot until we get to the next kernel. It
will still timeout if we never get to the next kernel and then a power
cycle will happen. That's what we want it to do.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
tools/testing/ktest/ktest.pl

index 839989d08dc24c8e778b17f140b5781b646299b2..f3bb5da3193b949850a65fa30215e7418d360c10 100755 (executable)
@@ -1212,6 +1212,12 @@ sub reboot {
     }
 
     if (defined($time)) {
+
+       # We only want to get to the new kernel, don't fail
+       # if we stumble over a call trace.
+       my $save_ignore_errors = $ignore_errors;
+       $ignore_errors = 1;
+
        # Look for the good kernel to boot
        if (wait_for_monitor($time, "Linux version")) {
            # reboot got stuck?
@@ -1219,6 +1225,8 @@ sub reboot {
            run_command "$power_cycle";
        }
 
+       $ignore_errors = $save_ignore_errors;
+
        # Still need to wait for the reboot to finish
        wait_for_monitor($time, $reboot_success_line);