summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2019-01-19 15:04:48 +0000
committerMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2019-01-21 14:27:28 +0000
commite7e9db0bcfbe93bb5df499be0d017f2f1cb0b2ee (patch)
treeea51c8512ad4d01b5c3e1fbec8f323695f7bf33f
parent1c7b10ca899a277e96010b5691e979e8d57ab594 (diff)
tcwg_kernel-bisect.sh: Re-arrange code in linux-next workaround
... in preparation to converting it into a loop. Make all 3 if-clauses follow the same template. Change-Id: If02069b536c5846db0466281ccc88d9bf0f67dff
-rwxr-xr-xtcwg_kernel-bisect.sh35
1 files changed, 15 insertions, 20 deletions
diff --git a/tcwg_kernel-bisect.sh b/tcwg_kernel-bisect.sh
index 87028e80..5668c16c 100755
--- a/tcwg_kernel-bisect.sh
+++ b/tcwg_kernel-bisect.sh
@@ -124,9 +124,10 @@ chmod +x $artifacts/test.sh
merge_base=$(git merge-base $bad_rev $baseline_rev)
origin=$(git remote get-url origin)
origin=$(basename "$origin")
-if [ x"$merge_base" != x"$good_rev" -a x"$origin" = x"linux-next.git" ]; then
- echo "Testing merge_base $merge_base (hoping for success)"
- git checkout --detach "$merge_base"
+if [ x"$merge_base" != x"$baseline_rev" -a x"$origin" = x"linux-next.git" ]; then
+ good_rev=$merge_base
+ echo "Testing merge base $good_rev (hoping for success)"
+ git checkout --detach "$good_rev"
$artifacts/test.sh &
res=0 && wait $! || res=$?
if [ x"$res" != x"0" ]; then
@@ -135,38 +136,32 @@ if [ x"$merge_base" != x"$good_rev" -a x"$origin" = x"linux-next.git" ]; then
cat <<EOF | manifest_out
declare -g linux_next_stable=$linux_next_stable
EOF
- echo "Testing linux_next:stable $linux_next_stable (hoping for success)"
- git checkout --detach $linux_next_stable
+ good_rev=$linux_next_stable
+ echo "Testing linux_next:stable $good_rev (hoping for success)"
+ git checkout --detach $good_rev
$artifacts/test.sh &
res=0 && wait $! || res=$?
- if [ x"$res" = x"0" ]; then
- good_rev=$linux_next_stable
- else
+ if [ x"$res" != x"0" ]; then
# Check if we can use linux-mainline/master as our last resort.
url=git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git remote add mainline "$url" > /dev/null 2>&1 || true
git remote set-url mainline "$url"
clone_or_update_repo . refs/remotes/mainline/master "$url"
- merge_base=$(git merge-base $bad_rev HEAD)
- mainline_master="${mainline_master-$merge_base}"
+ mainline_master="${mainline_master-$(git merge-base $bad_rev HEAD)}"
cat <<EOF | manifest_out
-declare -g mainline_master=$mainline_master
+declare -g mainline_master=$mainline_rev
EOF
- echo "Testing mainline_master $mainline_master (hoping for success)"
- git checkout --detach $mainline_master
+ good_rev=$mainline_master
+ echo "Testing mainline_master $good_rev (hoping for success)"
+ git checkout --detach $good_rev
$artifacts/test.sh &
res=0 && wait $! || res=$?
- if [ x"$res" = x"0" ]; then
- good_rev=$mainline_master
- else
- :
+ if [ x"$res" != x"0" ]; then
# Below bisect will fail :-(
+ good_rev=$baseline_rev
fi
fi
- else
- :
- # With good merge-base below bisect should succeed.
fi
else
good_rev=$baseline_rev