Package: devscripts
Version: 2.20.5
Severity: normal
Dear Maintainer,
any chrooted run debrepro fails on cleanup with s.th. like:
---
rm: cannot remove '/tmp/debrepro.WdTfiXpiIP/second/source': Device or resource
busy
---
This is due to fusermount -u failing w/
---
fusermount: failed to mark mounts private: Invalid argument
---
fusermount in a check prior to the umount runs
---
res = mount("", "/", "", MS_PRIVATE | MS_REC, NULL);
---
This *seems* to fail in chroots "since some kernel versions";
i.e., definitely fails w/ linux 5.* (bullseye), definitely used
to work with linux 4.19.* (buster).
A simple "umount" otoh still works for me like a charm -- "working for me"-style
patch attached, but there is no real wisdom in it ;).
It really seems to be a generic problem, but I'd still love someone to re-test
this in case it's a PP after all...
Thanks!
Stephan
-- Package-specific info:
--- /etc/devscripts.conf ---
Empty.
--- ~/.devscripts ---
DEBCLEAN_CLEANDEBS=yes
DEBUILD_PREPEND_PATH=/usr/lib/ccache
-- System Information:
Debian Release: bullseye/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 5.9.0-0.bpo.5-amd64 (SMP w/16 CPU threads)
Kernel taint flags: TAINT_WARN, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: unable to detect
Versions of packages devscripts depends on:
ii dpkg-dev 1.20.7.1
ii fakeroot 1.25.3-1.1
ii file 1:5.39-3
ii gnupg 2.2.20-1
ii gpgv 2.2.20-1
ii libc6 2.31-9
ii libfile-dirlist-perl 0.05-2
ii libfile-homedir-perl 1.006-1
ii libfile-touch-perl 0.11-1
ii libfile-which-perl 1.23-1
ii libipc-run-perl 20200505.0-1
ii libmoo-perl 2.004004-1
ii libwww-perl 6.52-1
ii patchutils 0.4.2-1
ii perl 5.32.0-6
ii python3 3.9.1-1
ii sensible-utils 0.0.14
ii wdiff 1.2.2-2+b1
Versions of packages devscripts recommends:
ii apt 2.1.18
ii curl 7.74.0-1
pn dctrl-tools <none>
ii debian-keyring 2020.12.24
ii dput-ng [dput] 1.32
ii equivs 2.3.1
ii libdistro-info-perl 0.24
ii libdpkg-perl 1.20.7.1
ii libencode-locale-perl 1.05-1.1
ii libgit-wrapper-perl 0.048-1
ii libgitlab-api-v4-perl 0.25-2
ii liblist-compare-perl 0.55-1
ii liblwp-protocol-https-perl 6.10-1
pn libsoap-lite-perl <none>
ii libstring-shellquote-perl 1.04-1
ii libtry-tiny-perl 0.30-1
ii liburi-perl 5.06-1
pn licensecheck <none>
ii lintian 2.104.0
ii man-db 2.9.3-2
ii patch 2.7.6-7
ii pristine-tar 1.49
ii python3-apt 2.1.7
ii python3-debian 0.1.39
ii python3-magic 2:0.4.20-3
ii python3-requests 2.25.1+dfsg-2
ii python3-unidiff 0.5.5-2
ii python3-xdg 0.27-2
pn strace <none>
ii unzip 6.0-26
ii wget 1.21-1+b1
ii xz-utils 5.2.5-1.0
Versions of packages devscripts suggests:
pn adequate <none>
pn at <none>
pn autopkgtest <none>
pn bls-standalone <none>
ii bsd-mailx [mailx] 8.1.2-0.20180807cvs-2
ii build-essential 12.9
pn check-all-the-things <none>
pn cvs-buildpackage <none>
ii debhelper 13.3.1
pn devscripts-el <none>
ii diffoscope 165
ii disorderfs 0.5.11-1
pn dose-extra <none>
pn duck <none>
ii faketime 0.9.7-3.1
pn gnuplot <none>
pn how-can-i-help <none>
pn libauthen-sasl-perl <none>
pn libdbd-pg-perl <none>
ii libfile-desktopentry-perl 0.22-2
pn libnet-smtps-perl <none>
pn libterm-size-perl <none>
ii libtimedate-perl 2.3300-1
pn libyaml-syck-perl <none>
pn mmdebstrap <none>
ii mozilla-devscripts 0.54.2
pn mutt <none>
ii openssh-client [ssh-client] 1:8.4p1-3
pn piuparts <none>
pn postgresql-client <none>
pn quilt <none>
pn ratt <none>
pn reprotest <none>
ii svn-buildpackage 0.8.7
pn w3m <none>
-- no debconf information
>From 1e0d29944cc36aa1e5e67d8ae3b3cf0648f635f4 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Stephan=20S=C3=BCrken?= <[email protected]>
Date: Wed, 27 Jan 2021 18:58:47 +0100
Subject: [PATCH] debrepro.sh: Use 'umount', not 'fusermount -u' (fixes umount
in chroot).
fusermount in a check prior to the umount runs
---
res = mount("", "/", "", MS_PRIVATE | MS_REC, NULL);
---
This seems to fail in chroots "since some kernel versions";
i.e., definitely fails w/ linux 5.* (bullseye), definitely used
to work with linux 4.19.* (buster).
A simple umount still works for me like a charm.
---
scripts/debrepro.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/debrepro.sh b/scripts/debrepro.sh
index fd044d3e..2c44523c 100755
--- a/scripts/debrepro.sh
+++ b/scripts/debrepro.sh
@@ -120,7 +120,7 @@ create_build_script() {
mv source orig &&
mkdir source &&
disorderfs --shuffle-dirents=yes orig source &&
-trap "cd .. && fusermount -u source && rmdir source && mv orig source" INT
TERM EXIT &&
+trap "cd .. && umount source && rmdir source && mv orig source" INT TERM EXIT
&&
cd source'
vary filesystem-ordering \
'' \
--
2.30.0