ktest: Add BISECT_FILES to run git bisect on paths
authorSteven Rostedt <srostedt@redhat.com>
Tue, 8 Mar 2011 14:38:12 +0000 (09:38 -0500)
committerSteven Rostedt <rostedt@goodmis.org>
Tue, 8 Mar 2011 14:52:58 +0000 (09:52 -0500)
Add the config option BISECT_FILES that allows the user to
specify what path in the kernel to run the git bisect on.

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

index 0f62916..65c5c55 100755 (executable)
@@ -1280,6 +1280,13 @@ sub bisect {
     my $type = $opt{"BISECT_TYPE[$i]"};
     my $start = $opt{"BISECT_START[$i]"};
     my $replay = $opt{"BISECT_REPLAY[$i]"};
+    my $start_files = $opt{"BISECT_FILES[$i]"};
+
+    if (defined($start_files)) {
+       $start_files = " -- " . $start_files;
+    } else {
+       $start_files = "";
+    }
 
     # convert to true sha1's
     $good = get_sha1($good);
@@ -1333,7 +1340,7 @@ sub bisect {
            die "Failed to checkout $head";
     }
 
-    run_command "git bisect start" or
+    run_command "git bisect start$start_files" or
        dodie "could not start bisect";
 
     run_command "git bisect good $good" or
index 4c46b7e..4c83ae7 100644 (file)
 #   when something other than the BISECT_TYPE fails, ktest.pl will
 #   run "git bisect skip" and try again.
 #
+# BISECT_FILES = <path> (optional, default undefined)
+#
+#   To just run the git bisect on a specific path, set BISECT_FILES.
+#   For example:
+#
+#     BISECT_FILES = arch/x86 kernel/time
+#
+#   Will run the bisect with "git bisect start -- arch/x86 kernel/time"
+#
 # BISECT_REVERSE = 1 (optional, default 0)
 #
 #   In those strange instances where it was broken forever