autopkgtest hangs in timedated test
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Auto Package Testing |
Invalid
|
Undecided
|
Unassigned | ||
dash (Debian) |
Fix Released
|
Unknown
|
|||
systemd (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
https:/
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/autopkgtes
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=
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=
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.
Changed in auto-package-testing: | |
status: | New → Invalid |
Changed in systemd (Ubuntu): | |
status: | New → Invalid |
Changed in dash (Debian): | |
status: | Unknown → Fix Released |
https:/ /salsa. debian. org/systemd- team/systemd/ -/merge_ requests/ 110