chiark / gitweb /
tests: Add a sleep to try to make tests more reliable
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 9 May 2026 10:35:50 +0000 (11:35 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 10 May 2026 10:56:37 +0000 (11:56 +0100)
Hopefully it will avoid this kind of thing (seen in ci.debian.net):

  101s + fuser -Mkm /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay:  2659rce  2661rce  2699rce  2742rce  2772rce  2775rce  2777rce  2778rce  2779rce  2780rce  2781rce  2782rce
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/proc
  101s umount: /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/proc: target is busy.
  101s + :
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/dev
  101s umount: /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/dev: target is busy.
  101s + :
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/home
  101s /tmp/autopkgtest.lrleaj/build.Yox/src/adt/../test/tcommon: line 51:  2741 Killed                     $exec ip netns exec hippotat-t-$tname-$client_server "$@"
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s umount: /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay: target is busy.
  101s + :
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-pidns
  101s + test -d /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s + rmdir /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s rmdir: failed to remove '/tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay': Device or resource busy
  101s /tmp/autopkgtest.lrleaj/build.Yox/src/adt/adt-full: line 1:  2529 Killed                     unshare --fork --pid="$tmp"/$cs-pidns chroot "$tmp"/$cs-overlay sh -ec '
  ...

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
adt/acommon

index 2d5934a45e101ac32b81f18ccebd63c477032942..606d3b5597987074cebfc04e85b78e9f67e95cb2 100644 (file)
@@ -112,6 +112,7 @@ hosts-cleanup () {
 host-cleanup () {
     cs=$1; shift
     fuser -Mkm "$tmp"/$cs-overlay ||:
+    sleep 1 # apparently fs's can still be busy even after kill(2) returns
     umount "$tmp"/$cs-overlay/proc ||:
     umount "$tmp"/$cs-overlay/dev ||:
     umount "$tmp"/$cs-overlay/home ||: