Package: dbus
Version: 1.12.10-1
Severity: minor
Tags: patch
User: ubuntu-de...@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/
slanga...@ubuntu.com                                     vor...@debian.org
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/^/    /'

Reply via email to