[Bug 1904406] Re: autopkgtest hangs in timedated test

Balint Reczey 1904406 at bugs.launchpad.net
Mon Nov 16 13:02:04 UTC 2020


https://salsa.debian.org/systemd-team/systemd/-/merge_requests/110

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1904406

Title:
  autopkgtest hangs in timedated test

Status in Auto Package Testing:
  New
Status in systemd package in Ubuntu:
  New

Bug description:
  https://autopkgtest.ubuntu.com/packages/s/systemd/hirsute/amd64

  autopkgtest [01:32:23]: test timedated: [-----------------------
  original tz: Etc/UTC
  timedatectl works
  change timezone
  reset timezone to original
  no adjtime file
  UTC set in adjtime file
  non-zero values in adjtime file
  fourth line adjtime file
  no final newline in adjtime file
  only one line in adjtime file
  only one line in adjtime file, no final newline
  only two lines in adjtime file
  only two lines in adjtime file, no final newline
  unknown value in 3rd line of adjtime file
  disable NTP
  enable NTP
  autopkgtest [04:19:03]: ERROR: timed out on command
  ....

  
  It seems autopkgtest script is executed with additional machinery creating child processes for the script:

  root        1305    1296  0 13:25 ttyS1    00:00:00 /bin/sh /tmp/autopkgtest.POBPF7/build.9KD/src/debian/tests/timedated
  root        1306    1305  0 13:25 ttyS1    00:00:00 bash -c set -e; export USER=`id -nu`; . /etc/profile >/dev/null 2>&1 || true;  . ~/.profile >/dev/null 2>&1 || true; buildtree="/tmp/autopkgtest.POBPF7/build.9KD/src"; mkdir -p -m 1777 -- "/tmp/autopkgtest.POBPF7/timedated-artifacts"; export AUTOPKGTEST_ARTIFACTS="/tmp/autopkgtest.POBPF7/timedated-artifacts"; export ADT_ARTIFACTS="$AUTOPKGTEST_ARTIFACTS"; mkdir -p -m 755 "/tmp/autopkgtest.POBPF7/autopkgtest_tmp"; export AUTOPKGTEST_TMP="/tmp/autopkgtest.POBPF7/autopkgtest_tmp"; export ADTTMP="$AUTOPKGTEST_TMP"; export DEBIAN_FRONTEND=noninteractive; export LANG=C.UTF-8; export DEB_BUILD_OPTIONS=parallel=1; unset LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE   LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS   LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION LC_ALL;rm -f /tmp/autopkgtest_script_pid; set -C; echo $$ > /tmp/autopkgtest_script_pid; set +C; trap "rm -f /tmp/autopkgtest_script_pid" EXIT INT QUIT PIPE; cd "$buildtree"; export AUTOPKGTEST_NORMAL_USER=ubuntu; export ADT_NORMAL_USER=ubuntu; chmod +x /tmp/autopkgtest.POBPF7/build.9KD/src/debian/tests/timedated; touch /tmp/autopkgtest.POBPF7/timedated-stdout /tmp/autopkgtest.POBPF7/timedated-stderr; /tmp/autopkgtest.POBPF7/build.9KD/src/debian/tests/timedated 2> >(tee -a /tmp/autopkgtest.POBPF7/timedated-stderr >&2) > >(tee -a /tmp/autopkgtest.POBPF7/timedated-stdout);
  root        1307    1305  0 13:25 ttyS1    00:00:00 bash -c set -e; export USER=`id -nu`; . /etc/profile >/dev/null 2>&1 || true;  . ~/.profile >/dev/null 2>&1 || true; buildtree="/tmp/autopkgtest.POBPF7/build.9KD/src"; mkdir -p -m 1777 -- "/tmp/autopkgtest.POBPF7/timedated-artifacts"; export AUTOPKGTEST_ARTIFACTS="/tmp/autopkgtest.POBPF7/timedated-artifacts"; export ADT_ARTIFACTS="$AUTOPKGTEST_ARTIFACTS"; mkdir -p -m 755 "/tmp/autopkgtest.POBPF7/autopkgtest_tmp"; export AUTOPKGTEST_TMP="/tmp/autopkgtest.POBPF7/autopkgtest_tmp"; export ADTTMP="$AUTOPKGTEST_TMP"; export DEBIAN_FRONTEND=noninteractive; export LANG=C.UTF-8; export DEB_BUILD_OPTIONS=parallel=1; unset LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE   LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS   LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION LC_ALL;rm -f /tmp/autopkgtest_script_pid; set -C; echo $$ > /tmp/autopkgtest_script_pid; set +C; trap "rm -f /tmp/autopkgtest_script_pid" EXIT INT QUIT PIPE; cd "$buildtree"; export AUTOPKGTEST_NORMAL_USER=ubuntu; export ADT_NORMAL_USER=ubuntu; chmod +x /tmp/autopkgtest.POBPF7/build.9KD/src/debian/tests/timedated; touch /tmp/autopkgtest.POBPF7/timedated-stdout /tmp/autopkgtest.POBPF7/timedated-stderr; /tmp/autopkgtest.POBPF7/build.9KD/src/debian/tests/timedated 2> >(tee -a /tmp/autopkgtest.POBPF7/timedated-stderr >&2) > >(tee -a /tmp/autopkgtest.POBPF7/timedated-stdout);

  This is why wait hangs and this is why waiting only for the killed
  child fixes the issue:

  @@ -163,7 +163,7 @@ wait_mon() {
       done
       assert_in "$2" "$(cat $mon)"
       kill $MONPID
  -    wait
  +    wait $MONPID
   }

  I'm fixing this in systemd, but the autopkgtest change could break
  other packages as well.

To manage notifications about this bug go to:
https://bugs.launchpad.net/auto-package-testing/+bug/1904406/+subscriptions



More information about the foundations-bugs mailing list