Change the cron script (btw. we are now triggered by systemd timers)
[can-benchmark.git] / continuous / steps / 11-patch
1 #!/bin/bash
2
3 set -e
4
5 cd linux
6
7 git reset --hard
8
9 HEAD_SHA=$(git rev-parse HEAD)
10
11 echo "! Repo $(git config remote.origin.url) $(git describe) $HEAD_SHA ok"
12
13 function vercmp()
14 {
15     v1=${1#v}
16     op=$2
17     v2=${3#v}
18
19     # Make release candidates sort before the final release
20     v1=${v1/rc/\~}
21     v2=${v2/rc/\~}
22
23     dpkg --compare-versions $v1 $op $v2
24 }
25
26 if git rev-list --ancestry-path 0b05e2d671c40cfb57e66e4e402320d6e056b2f8..1cd03890ea64795e53f17a94928cca22495acb2a^|grep -q $HEAD_SHA; then
27     # Revert commit that causes unbootable system (v4.2-rc2-34-g0b05e2d)
28     git revert --no-edit 0b05e2d671c40cfb57e66e4e402320d6e056b2f8 # powerpc/32: cacheable_memcpy becomes memcpy
29     git reset HEAD^ # Do not commit revert - this helps with bisecting
30 fi
31
32 if git rev-list --ancestry-path 990486c8af044f89bddfbde1d1cf9fde449bedbf^..7a5692e6e533fd379081ab06fb58f3f5ee4d80bc^|grep -q $HEAD_SHA; then
33     # Revert commit that causes compile error (v4.3-rc4-3-g990486c)
34     git revert --no-edit 990486c8af044f89bddfbde1d1cf9fde449bedbf # strscpy: zero any trailing garbage bytes in the destination
35     git reset HEAD^ # Do not commit revert - this helps with bisecting
36 fi
37
38 if git rev-list --ancestry-path 7322dd755e7dd34bc5359aa27abeed1687e0f628^..v4.6^|grep -q $HEAD_SHA; then
39     # Revert commit that causes compile error. This error seems to be
40     # caused by a compiler bug (see the message of the reverted
41     # commit) and is magically fixed by an unrelated commit merged
42     # before v4.6 (commit 20decb7e486d7eefff3931f58d092d2d7c024a1c
43     # "drivers: net: xgene: Fix error handling")
44     git revert --no-edit 7322dd755e7dd34bc5359aa27abeed1687e0f628 # byteswap: try to avoid __builtin_constant_p gcc bug
45     git reset HEAD^ # Do not commit revert - this helps with bisecting
46 fi
47
48 if git rev-list --ancestry-path 9402c684613163888714df0955fa1f17142b08bf^..2c0f99516f53911c3f2f81ab3815841e3408f11e^|grep -q $HEAD_SHA; then
49     # Apply fix for commit that breaks boot
50     git apply --index <<EOF
51 --- a/arch/powerpc/lib/feature-fixups.c
52 +++ b/arch/powerpc/lib/feature-fixups.c
53 @@ -154,3 +154,3 @@ static void do_final_fixups(void)
54  {
55 -       struct cpu_spec *spec = *PTRRELOC(&cur_cpu_spec);
56 +       struct cpu_spec *spec = PTRRELOC(*PTRRELOC(&cur_cpu_spec));
57  
58 EOF
59 fi
60
61 if git rev-list --ancestry-path 309b315b6ec686ce050758cc4e29f6ad1125a83f^..97f6e0cc35026a2a09147a6da636d901525e1969^|grep -q $HEAD_SHA; then
62     git show 97f6e0cc35026a2a09147a6da636d901525e1969 | git apply --index
63 fi
64
65 # It the dts file exists, next command fails
66 rm -f arch/powerpc/boot/dts/shark-ryu.dts
67 git apply --index < ../shark-ryu-board-patch.patch