Running the coreutils 9.10 test suite on the alpine linux builder results in 
hangup:

t40.sh: skipped test: very expensive: disabled by default
SKIP: tests/factor/t38.sh
SKIP: tests/factor/t39.sh
SKIP: tests/factor/t37.sh
SKIP: tests/factor/t40.sh
PASS: tests/cp/sparse.sh
make[4]: *** Deleting file 'tests/tail/debug.log'
make[4]: *** Deleting file 'tests/mv/part-symlink.log'
make[4]: *** Deleting file 'tests/ls/abmon-align.log'
make[4]: *** Deleting file 'tests/dd/stats.log'
make[4]: *** Deleting file 'tests/cp/same-file.log'
make[4]: *** Deleting file 'tests/tail/retry.log'
make[1]: *** [Makefile:24419: check-recursive] Hangup
make[3]: *** [Makefile:24668: check-TESTS] Hangup
make[4]: *** Deleting file 'tests/uniq/uniq.log'
make[4]: *** Deleting file 'tests/misc/usage_vs_refs.log'
make[4]: *** Deleting file 'tests/misc/getopt_vs_usage.log'
make[4]: *** Deleting file 'tests/misc/usage_vs_getopt.log'
make[4]: *** Deleting file 'tests/timeout/timeout-large-parameters.log'
make[4]: *** Deleting file 'tests/timeout/timeout.log'
make[4]: *** Deleting file 'tests/split/line-bytes.log'
make[4]: *** Deleting file 'tests/od/od-multiple-t.log'
make[4]: *** Deleting file 'tests/basenc/bounded-memory.log'
make[4]: *** Deleting file 'tests/tail/overlay-headers.log'
make[4]: *** Deleting file 'tests/date/date.log'
make[4]: *** Deleting file 'tests/tail/inotify-rotate.log'
make: *** [Makefile:24922: check] Hangup
make[2]: *** [Makefile:24920: check-am] Hangup
make[4]: *** [Makefile:24685: tests/misc/usage_vs_refs.log] Error 129
make[4]: *** [Makefile:24685: tests/misc/getopt_vs_usage.log] Error 129
make[4]: *** [Makefile:24685: tests/cp/same-file.log] Error 129
make[4]: *** [Makefile:24685: tests/misc/usage_vs_getopt.log] Error 129
make[4]: *** [Makefile:24685: tests/od/od-multiple-t.log] Error 129
make[4]: *** [Makefile:24685: tests/ls/abmon-align.log] Error 129
make[4]: *** [Makefile:24685: tests/dd/stats.log] Error 129
make[4]: *** [Makefile:24685: tests/split/line-bytes.log] Error 129
make[4]: *** [Makefile:24685: tests/tail/retry.log] Error 129
make[4]: *** [Makefile:24685: tests/mv/part-symlink.log] Error 129
make[4]: *** [Makefile:24685: tests/tail/overlay-headers.log] Error 129
make[4]: *** [Makefile:24685: tests/tail/debug.log] Error 129
make[4]: *** [Makefile:24685: tests/tail/inotify-rotate.log] Error 129
make[4]: *** [Makefile:24685: tests/basenc/bounded-memory.log] Error 129
make[4]: *** [Makefile:24699: tests/uniq/uniq.log] Error 129
make[4]: *** [Makefile:24699: tests/date/date.log] Error 129
make[4]: *** [Makefile:24685: tests/timeout/timeout.log] Error 129
make[4]: *** [Makefile:24685: tests/timeout/timeout-large-parameters.log] Error 
129

The two tests which trigger the failure are tests/tail/overlay-headers.sh
and tests/timeout/timeout.sh. There's an interaction between these two tests.
It can be reproduced with only those 2 tests enabled. There is an strace log 
[1].
The builders are run as a service, so no tty.

To reproduce, I ran `setsid make -j2 check` with only the two mentioned tests
enabled:

  GEN      public-submodule-commit
make  check-recursive
make[1]: Entering directory 
'/home/john/aports/main/coreutils/src/coreutils-9.10'
Making check in po
make[2]: Entering directory 
'/home/john/aports/main/coreutils/src/coreutils-9.10/po'
make[2]: Nothing to be done for 'check'.
make[2]: Leaving directory 
'/home/john/aports/main/coreutils/src/coreutils-9.10/po'
Making check in .
make[2]: Entering directory 
'/home/john/aports/main/coreutils/src/coreutils-9.10'
make  check-TESTS check-local
make[3]: Entering directory 
'/home/john/aports/main/coreutils/src/coreutils-9.10'
  GEN      check-README
  GEN      check-duplicate-no-install
  GEN      sc-avoid-builtin
  GEN      sc-avoid-io
  GEN      sc-avoid-non-zero
  GEN      sc-avoid-path
  GEN      sc-avoid-timezone
  GEN      sc-avoid-zeroes
  GEN      sc-exponent-grouping
  GEN      sc-lower-case-var
  GEN      check-texinfo
make[4]: Entering directory 
'/home/john/aports/main/coreutils/src/coreutils-9.10'
make[4]: *** Deleting file 'tests/timeout/timeout.log'
make[1]: *** wait: No child process.  Stop.
make[1]: *** Waiting for unfinished jobs....
make[1]: *** wait: No child process.  Stop.
make[4]: *** Deleting file 'tests/tail/overlay-headers.log'
make[4]: *** [Makefile:24060: tests/tail/overlay-headers.log] Hangup
make[3]: *** [Makefile:24043: check-TESTS] Hangup
make[4]: *** [Makefile:24060: tests/timeout/timeout.log] Hangup
make: *** [Makefile:24297: check] Error 2
make[2]: *** [Makefile:24295: check-am] Hangup

Since the build is being run without a controlling terminal attached,
it looks like a signal is getting propagated up to a parent process.
After reversing the e1cbe82cc6131b2cb8441b948f75a0eb28bdcc40 patch [2],
our build and test run of coreutils 9.10 completes successfully.

[1] https://dev.alpinelinux.org/~kevin/coreutils-tests.strace
[2] 
https://gitlab.alpinelinux.org/alpine/aports/-/commit/5c4bc917b78b59204aacd620103916f1a0c1542a



Reply via email to