[Pkg-utopia-maintainers] Bug#908092: dbus: skip autopkgtest ulimit test when in a container

Steve Langasek steve.langasek at canonical.com
Thu Sep 6 06:02:01 BST 2018


Package: dbus
Version: 1.12.10-1
Severity: minor
Tags: patch
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu cosmic ubuntu-patch

Dear maintainers,

After merging dbus 1.12.10-1 from Debian into Ubuntu, the autopkgtests were
failing on armhf:

[...]
    # our RLIMIT_NOFILE: rlim_cur: 1024, rlim_max: 1024
    # dbus-daemon's RLIMIT_NOFILE: rlim_cur: 1024, rlim_max: 1024
    Bail out! ERROR:../../../test/dbus-daemon.c:2085:test_fd_limit: assertion fa
iled (lim.rlim_cur >= DESIRED_RLIMIT): (1024 >= 65536)
/tmp/autopkgtest.GG6gs6/build.iea/src/debian/tests/root: line 28:   638 Aborted 
                $timeout $t --tap
[...]
autopkgtest [20:05:11]: test root: -----------------------]
autopkgtest [20:05:14]: test root:  - - - - - - - - - - results - - - - - - - - - -
root                 FAIL non-zero exit status 1

   (https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-cosmic/cosmic/armhf/d/dbus/20180905_201152_67b80@/log.gz)

This is because armhf is the single architecture on which Ubuntu runs its
autopkgtests in containers rather than in VMs, and these are unprivileged
containers, which means "root" processes don't actually have the
capabilities necessary to re-raise limits after they've been lowered.

I've uploaded the attached patch to Ubuntu in order to have passing tests
again on armhf.  I'm not sure if you would consider it sufficiently correct
for Debian, since this means we're also skipping this test on privileged
containers, but I guess it should be a starting point for discussion.

Thanks,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                   https://www.debian.org/
slangasek at ubuntu.com                                     vorlon at debian.org
-------------- next part --------------
diff -Nru dbus-1.12.10/debian/tests/root dbus-1.12.10/debian/tests/root
--- dbus-1.12.10/debian/tests/root	2018-08-03 03:18:18.000000000 -0700
+++ dbus-1.12.10/debian/tests/root	2018-09-05 20:56:03.000000000 -0700
@@ -35,9 +35,14 @@
         echo "x" > "$AUTOPKGTEST_TMP/result"
         (
             set +e
-            # One test needs us to have a small fd limit
-            ulimit -S -n 1024
-            ulimit -H -n 1024
+            # Don't change limits in containers, as we're not guaranteed to be
+            # able to re-raise them due to unprivileged containers.  This test
+            # will be auto-skipped instead.
+            if ! grep -q container= /proc/1/environ; then
+                # One test needs us to have a small fd limit
+                ulimit -S -n 1024
+                ulimit -H -n 1024
+            fi
             $timeout $t --tap
             echo "$?" > "$AUTOPKGTEST_TMP/result"
         ) | sed 's/^/    /'


More information about the Pkg-utopia-maintainers mailing list