| # | 
| # This example shows the bisect tests (git bisect and config bisect) | 
| # | 
|   | 
|   | 
| # The config that includes this file may define a RUN_TEST | 
| # variable that will tell this config what test to run. | 
| # (what to set the TEST option to). | 
| # | 
| DEFAULTS IF NOT DEFINED RUN_TEST | 
| # Requires that hackbench is in the PATH | 
| RUN_TEST := ${SSH} hackbench 50 | 
|   | 
|   | 
| # Set TEST to 'bisect' to do a normal git bisect. You need | 
| # to modify the options below to make it bisect the exact | 
| # commits you are interested in. | 
| # | 
| TEST_START IF ${TEST} == bisect | 
| TEST_TYPE = bisect | 
| # You must set the commit that was considered good (git bisect good) | 
| BISECT_GOOD = v3.3 | 
| # You must set the commit that was considered bad (git bisect bad) | 
| BISECT_BAD = HEAD | 
| # It's best to specify the branch to checkout before starting the bisect. | 
| CHECKOUT = origin/master | 
| # This can be build, boot, or test. Here we are doing a bisect | 
| # that requires to run a test to know if the bisect was good or bad. | 
| # The test should exit with 0 on good, non-zero for bad. But see | 
| # the BISECT_RET_* options in samples.conf to override this. | 
| BISECT_TYPE = test | 
| TEST = ${RUN_TEST} | 
| # It is usually a good idea to confirm that the GOOD and the BAD | 
| # commits are truly good and bad respectively. Having BISECT_CHECK | 
| # set to 1 will check both that the good commit works and the bad | 
| # commit fails. If you only want to check one or the other, | 
| # set BISECT_CHECK to 'good' or to 'bad'. | 
| BISECT_CHECK = 1 | 
| #BISECT_CHECK = good | 
| #BISECT_CHECK = bad | 
|   | 
| # Usually it's a good idea to specify the exact config you | 
| # want to use throughout the entire bisect. Here we placed | 
| # it in the directory we called ktest.pl from and named it | 
| # 'config-bisect'. | 
| MIN_CONFIG = ${THIS_DIR}/config-bisect | 
| # By default, if we are doing a BISECT_TYPE = test run but the | 
| # build or boot fails, ktest.pl will do a 'git bisect skip'. | 
| # Uncomment the below option to make ktest stop testing on such | 
| # an error. | 
| #BISECT_SKIP = 0 | 
| # Now if you had BISECT_SKIP = 0 and the test fails, you can | 
| # examine what happened and then do 'git bisect log > /tmp/replay' | 
| # Set BISECT_REPLAY to /tmp/replay and ktest.pl will run the | 
| # 'git bisect replay /tmp/replay' before continuing the bisect test. | 
| #BISECT_REPLAY = /tmp/replay | 
| # If you used BISECT_REPLAY after the bisect test failed, you may | 
| # not want to continue the bisect on that commit that failed. | 
| # By setting BISECT_START to a new commit. ktest.pl will checkout | 
| # that commit after it has performed the 'git bisect replay' but | 
| # before it continues running the bisect test. | 
| #BISECT_START = 2545eb6198e7e1ec50daa0cfc64a4cdfecf24ec9 | 
|   | 
| # Now if you don't trust ktest.pl to make the decisions for you, then | 
| # set BISECT_MANUAL to 1. This will cause ktest.pl not to decide | 
| # if the commit was good or bad. Instead, it will ask you to tell | 
| # it if the current commit was good. In the mean time, you could | 
| # take the result, load it on any machine you want. Run several tests, | 
| # or whatever you feel like. Then, when you are happy, you can tell | 
| # ktest if you think it was good or not and ktest.pl will continue | 
| # the git bisect. You can even change what commit it is currently at. | 
| #BISECT_MANUAL = 1 | 
|   | 
|   | 
| # One of the unique tests that ktest does is the config bisect. | 
| # Currently (which hopefully will be fixed soon), the bad config | 
| # must be a superset of the good config. This is because it only | 
| # searches for a config that causes the target to fail. If the | 
| # good config is not a subset of the bad config, or if the target | 
| # fails because of a lack of a config, then it will not find | 
| # the config for you. | 
| TEST_START IF ${TEST} == config-bisect | 
| TEST_TYPE = config_bisect | 
| # set to build, boot, test | 
| CONFIG_BISECT_TYPE = boot | 
| # Set the config that is considered bad. | 
| CONFIG_BISECT = ${THIS_DIR}/config-bad | 
| # This config is optional. By default it uses the | 
| # MIN_CONFIG as the good config. | 
| CONFIG_BISECT_GOOD = ${THIS_DIR}/config-good |