#!/bin/sh set -e path="$(dirname $0)" test="$1" makedir="$2" if [ -z $test ] ; then echo "This script helps bisect test failures, given a test case." echo "" echo "Use it like this:" echo " git bisect start" echo " git bisect bad " echo " git bisect good " echo " git bisect run $0 []" echo "" echo "(the compile directory is optional, use it if you want to" echo "use an out-of-tree kernel build." echo "" echo "Note that, of course, you have to have a working vm-run setup." exit 200 # exit git bisect run if called that way fi if [ -n "$makedir" ] ; then cd "$makedir" fi yes '' | make oldconfig || exit 125 make -j8 || exit 125 output=$(mktemp) if [ $? -ne 0 ] ; then exit 202 fi finish() { rm -f $output } trap finish EXIT "$path/vm-run.sh" $test 2>&1 | tee $output grep -q 'ALL-PASSED' $output && exit 0 || exit 1