[Piuparts-devel] Bug#704037: piuparts: fail with umount while mounting /proc/sys/fs/binfmt_misc

Antonio Ospite ao2 at ao2.it
Sat Oct 29 14:47:56 UTC 2016


Package: piuparts
Version: 0.72
Followup-For: Bug #704037

Dear Maintainer,

I ran into this issue when working on a java package, it is indeed related to
binfmt-support as the original submitter said.

I am not attaching the log as it looks a lot like the one already posted.

I found some more info in an Ubuntu bug report:
https://bugs.launchpad.net/ubuntu/+source/binfmt-support/+bug/534211

And it looks like debian-live has a workaround for this issue as well:
https://lists.debian.org/debian-live/2007/01/msg00039.html

I can reproduce the problem with the "signtos" package, which has
similar dependencies to the one I am working on which is not in debian
yet (in particular they both depend on jarwrapper).

Here's how to reproduce it with a pbuilder chroot:

  $ DIST=sid ARCH=amd64 BUILDER=pbuilder git pbuilder create 
  $ wget http://deb.debian.org/debian/pool/main/a/android-platform-build/signtos_6.0.1+r55-3_all.deb
  $ DIST=sid ARCH=amd64 eval sudo piuparts --log-level dump --list-installed-files --pedantic-purge-test --warn-on-leftovers-after-purge --warn-on-others -b '/var/cache/pbuilder/base-$DIST-$ARCH.tgz' signtos_6.0.1+r55-3_all.deb

The change below works around it, after applying it piuparts unmounts the
chroot successfully:

------------------------------------------------------------------------------
--- /usr/sbin/piuparts	2016-08-03 11:24:56.000000000 +0200
+++ piuparts	2016-10-29 15:23:16.137417215 +0200
@@ -1576,6 +1576,13 @@ class Chroot:
 
     def unmount_all(self):
         """Unmount everything we mount()ed into the chroot."""
+
+        # Hack to umount /proc/sys/fs/binfmt_misc which is mounted by
+        # update-binfmts, see
+        # https://bugs.launchpad.net/ubuntu/+source/binfmt-support/+bug/534211
+        # https://lists.debian.org/debian-live/2007/01/msg00039.html
+        run(["umount", self.relative("/proc/sys/fs/binfmt_misc")], ignore_errors=True)
+
         for mountpoint in reversed(self.mounts):
             run(["umount", mountpoint], ignore_errors=True)
 
------------------------------------------------------------------------------

I don't know if this can or should be fixed in binfmt-support, but if you want
to add the workaround to piupoarts I can send a proper patch.

Thanks,
   Antonio

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (900, 'unstable'), (500, 'unstable-debug')
Architecture: amd64 (x86_64)

Kernel: Linux 4.7.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=it_IT.utf8, LC_CTYPE=it_IT.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Init: systemd (via /run/systemd/system)

Versions of packages piuparts depends on:
ii  debootstrap      1.0.85
ii  debsums          2.1.2
ii  dpkg             1.18.10
ii  lsb-release      9.20161016
ii  lsof             4.89+dfsg-0.1
ii  piuparts-common  0.72
ii  python-debian    0.1.29
pn  python:any       <none>

Versions of packages piuparts recommends:
ii  adequate  0.15.1

Versions of packages piuparts suggests:
pn  schroot  <none>

-- no debconf information
-- 
Antonio Ospite
https://ao2.it
https://twitter.com/ao2it

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?



More information about the Piuparts-devel mailing list