diff options
Diffstat (limited to 'tools/testing/ktest/examples/include/bisect.conf')
| -rw-r--r-- | tools/testing/ktest/examples/include/bisect.conf | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/tools/testing/ktest/examples/include/bisect.conf b/tools/testing/ktest/examples/include/bisect.conf new file mode 100644 index 000000000000..009bea65bfb6 --- /dev/null +++ b/tools/testing/ktest/examples/include/bisect.conf | |||
| @@ -0,0 +1,90 @@ | |||
| 1 | # | ||
| 2 | # This example shows the bisect tests (git bisect and config bisect) | ||
| 3 | # | ||
| 4 | |||
| 5 | |||
| 6 | # The config that includes this file may define a RUN_TEST | ||
| 7 | # variable that will tell this config what test to run. | ||
| 8 | # (what to set the TEST option to). | ||
| 9 | # | ||
| 10 | DEFAULTS IF NOT DEFINED RUN_TEST | ||
| 11 | # Requires that hackbench is in the PATH | ||
| 12 | RUN_TEST := ${SSH} hackbench 50 | ||
| 13 | |||
| 14 | |||
| 15 | # Set TEST to 'bisect' to do a normal git bisect. You need | ||
| 16 | # to modify the options below to make it bisect the exact | ||
| 17 | # commits you are interested in. | ||
| 18 | # | ||
| 19 | TEST_START IF ${TEST} == bisect | ||
| 20 | TEST_TYPE = bisect | ||
| 21 | # You must set the commit that was considered good (git bisect good) | ||
| 22 | BISECT_GOOD = v3.3 | ||
| 23 | # You must set the commit that was considered bad (git bisect bad) | ||
| 24 | BISECT_BAD = HEAD | ||
| 25 | # It's best to specify the branch to checkout before starting the bisect. | ||
| 26 | CHECKOUT = origin/master | ||
| 27 | # This can be build, boot, or test. Here we are doing a bisect | ||
| 28 | # that requires to run a test to know if the bisect was good or bad. | ||
| 29 | # The test should exit with 0 on good, non-zero for bad. But see | ||
| 30 | # the BISECT_RET_* options in samples.conf to override this. | ||
| 31 | BISECT_TYPE = test | ||
| 32 | TEST = ${RUN_TEST} | ||
| 33 | # It is usually a good idea to confirm that the GOOD and the BAD | ||
| 34 | # commits are truly good and bad respectively. Having BISECT_CHECK | ||
| 35 | # set to 1 will check both that the good commit works and the bad | ||
| 36 | # commit fails. If you only want to check one or the other, | ||
| 37 | # set BISECT_CHECK to 'good' or to 'bad'. | ||
| 38 | BISECT_CHECK = 1 | ||
| 39 | #BISECT_CHECK = good | ||
| 40 | #BISECT_CHECK = bad | ||
| 41 | |||
| 42 | # Usually it's a good idea to specify the exact config you | ||
| 43 | # want to use throughout the entire bisect. Here we placed | ||
| 44 | # it in the directory we called ktest.pl from and named it | ||
| 45 | # 'config-bisect'. | ||
| 46 | MIN_CONFIG = ${THIS_DIR}/config-bisect | ||
| 47 | # By default, if we are doing a BISECT_TYPE = test run but the | ||
| 48 | # build or boot fails, ktest.pl will do a 'git bisect skip'. | ||
| 49 | # Uncomment the below option to make ktest stop testing on such | ||
| 50 | # an error. | ||
| 51 | #BISECT_SKIP = 0 | ||
| 52 | # Now if you had BISECT_SKIP = 0 and the test fails, you can | ||
| 53 | # examine what happened and then do 'git bisect log > /tmp/replay' | ||
| 54 | # Set BISECT_REPLAY to /tmp/replay and ktest.pl will run the | ||
| 55 | # 'git bisect replay /tmp/replay' before continuing the bisect test. | ||
| 56 | #BISECT_REPLAY = /tmp/replay | ||
| 57 | # If you used BISECT_REPLAY after the bisect test failed, you may | ||
| 58 | # not want to continue the bisect on that commit that failed. | ||
| 59 | # By setting BISECT_START to a new commit. ktest.pl will checkout | ||
| 60 | # that commit after it has performed the 'git bisect replay' but | ||
| 61 | # before it continues running the bisect test. | ||
| 62 | #BISECT_START = 2545eb6198e7e1ec50daa0cfc64a4cdfecf24ec9 | ||
| 63 | |||
| 64 | # Now if you don't trust ktest.pl to make the decisions for you, then | ||
| 65 | # set BISECT_MANUAL to 1. This will cause ktest.pl not to decide | ||
| 66 | # if the commit was good or bad. Instead, it will ask you to tell | ||
| 67 | # it if the current commit was good. In the mean time, you could | ||
| 68 | # take the result, load it on any machine you want. Run several tests, | ||
| 69 | # or whatever you feel like. Then, when you are happy, you can tell | ||
| 70 | # ktest if you think it was good or not and ktest.pl will continue | ||
| 71 | # the git bisect. You can even change what commit it is currently at. | ||
| 72 | #BISECT_MANUAL = 1 | ||
| 73 | |||
| 74 | |||
| 75 | # One of the unique tests that ktest does is the config bisect. | ||
| 76 | # Currently (which hopefully will be fixed soon), the bad config | ||
| 77 | # must be a superset of the good config. This is because it only | ||
| 78 | # searches for a config that causes the target to fail. If the | ||
| 79 | # good config is not a subset of the bad config, or if the target | ||
| 80 | # fails because of a lack of a config, then it will not find | ||
| 81 | # the config for you. | ||
| 82 | TEST_START IF ${TEST} == config-bisect | ||
| 83 | TEST_TYPE = config_bisect | ||
| 84 | # set to build, boot, test | ||
| 85 | CONFIG_BISECT_TYPE = boot | ||
| 86 | # Set the config that is considered bad. | ||
| 87 | CONFIG_BISECT = ${THIS_DIR}/config-bad | ||
| 88 | # This config is optional. By default it uses the | ||
| 89 | # MIN_CONFIG as the good config. | ||
| 90 | CONFIG_BISECT_GOOD = ${THIS_DIR}/config-good | ||
