From: Stephen Rothwell Date: Thu, 12 Jun 2025 01:42:02 +0000 (+1000) Subject: do_build: consolidate failure action X-Git-Url: https://git.ozlabs.org/?a=commitdiff_plain;h=HEAD;p=next-scripts do_build: consolidate failure action --- diff --git a/do_build b/do_build index f4e2848..0815989 100755 --- a/do_build +++ b/do_build @@ -72,6 +72,21 @@ $cmd <<-EOF sed -E -e '$log_regex' | grep -vxFf $bparent/log-ignore } + do_fail() + { + sep='!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' + echo "\$sep" + echo "ERROR: \$1 build failed - log follows" + echo "\$sep" + cat "\$2" + if [ -n "\$3" ]; then + kill "\$3" || true + fi + killall make + rm .scmversion + exit 1 + } + show_log() { arch=\$1 conf=\$2 @@ -121,18 +136,9 @@ $cmd <<-EOF d="$bparent/perf" [ -d \$d ] || mkdir \$d || exit 1 log_perf=\$d.log - /usr/bin/time make -C tools/perf -f Makefile.perf -s -O -j100 O=\$d NO_BPF_SKEL=1 > \$log_perf 2>&1 - rc=\$? - - if [ \$rc -ne 0 ]; then - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "ERROR: perf build failed - log follows" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - cat \$log_perf - kill \$x86_64_pid || true - killall make - rm .scmversion - exit 1 + + if ! /usr/bin/time make -C tools/perf -f Makefile.perf -s -O -j100 O=\$d NO_BPF_SKEL=1 > \$log_perf 2>&1; then + do_fail perf "\$log_perf" "\$x86_64_pid" fi show_log native perf \$log_perf @@ -142,18 +148,9 @@ $cmd <<-EOF [ -d \$d ] || mkdir \$d || exit 1 log_ppc=\$d.log make ARCH=powerpc O=\$d -s ppc64_defconfig || exit 1 - /usr/bin/time make ARCH=powerpc O=\$d -j100 -O -s > \$log_ppc 2>&1 - rc=\$? - - if [ \$rc -ne 0 ]; then - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "ERROR: powerpc ppc64_defconfig build failed - log follows" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - cat \$log_ppc - kill \$x86_64_pid || true - killall make - rm .scmversion - exit 1 + + if ! /usr/bin/time make ARCH=powerpc O=\$d -j100 -O -s > \$log_ppc 2>&1; then + do_fail "powerpc ppc64_defconfig" "\$log_ppc" "\$x86_64_pid" fi show_log powerpc ppc64_defconfig \$log_ppc @@ -163,32 +160,15 @@ $cmd <<-EOF [ -d \$d ] || mkdir \$d || exit 1 log_arm=\$d.log make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- O=\$d -s multi_v7_defconfig || exit 1 - /usr/bin/time make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- O=\$d -j100 -O -s > \$log_arm 2>&1 - rc=\$? - - if [ \$rc -ne 0 ]; then - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "ERROR: arm multi_v7_defconfig build failed - log follows" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - cat \$log_arm - kill \$x86_64_pid || true - killall make - rm .scmversion - exit 1 + + if ! /usr/bin/time make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- O=\$d -j100 -O -s > \$log_arm 2>&1; then + do_fail 'arm multi_v7_defconfig' "\$log_arm" "\$x86_64_pid" fi show_log arm multi_v7_defconfig \$log_arm - wait \$x86_64_pid - rc=\$? - - if [ \$rc -ne 0 ]; then - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "ERROR: x86_64 allmodconfig build failed - log follows" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - cat \$log_x86 - rm .scmversion - exit 1 + if ! wait \$x86_64_pid; then + do_fail "x86_64 allmodconfig" "\$log_x86" fi show_log x86_64 allmodconfig \$log_x86