Public bug reported:

If I run something like:

vagrant@ubuntu-bionic:~/packaging/hello$ sudo pbuilder --build
--configfile /etc/pbuilder/xenial-amd64/pbuilderrc --buildresult
/home/vagrant/packaging/hello/result --bindmounts '/run/dbus
/var/lib/dbus /dev/shm /run/shm' hello_2.10-1build1.dsc

And then in parallel (from another SSH session):
vagrant@ubuntu-bionic:~/packaging/hello2$ sudo pbuilder --build --configfile 
/etc/pbuilder/xenial-amd64/pbuilderrc --buildresult 
/home/vagrant/packaging/hello2/result --bindmounts '/run/dbus /var/lib/dbus 
/dev/shm /run/shm' hello_2.10-1build1.dsc

When the second command finishes the tmpfs on /dev/shm is unmounted.
Unsurprisingly this causes chaos on the host system. This happens on
Bionic but not Xenial, and originally came up on our physical Jenkins
agents, but I've reproduced with Vagrant here by way of illustration.

It turns out that the `/dev/shm /run/shm` bind mount is unnecessary, as
the RUNSHM option defaults to yes anyway, and removing it makes the
problem go away. That being said, I don't know if the same behaviour
would happen in the case of other bind mounts when running in parallel,
and I'm not sure this should be happening.

Ubuntu version:
vagrant@ubuntu-bionic:~$ lsb_release -rd
Description:    Ubuntu 18.04.1 LTS
Release:        18.04

pbuilder version:
vagrant@ubuntu-bionic:~$ apt-cache policy pbuilder
pbuilder:
  Installed: 0.229.1
  Candidate: 0.229.1
  Version table:
 *** 0.229.1 500
        500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages
        100 /var/lib/dpkg/status

The /etc/pbuilder/xenial-amd64/pbuilderrc file mentioned above:
```
# Distribution and Architecture settings
DISTRIBUTION="xenial"
ARCHITECTURE="amd64"
COMPONENTS="main restricted universe multiverse xenial-backports xenial-updates"

# Directories
BASETGZ="/var/cache/pbuilder/xenial-amd64-base.tgz"
BUILDPLACE="/var/cache/pbuilder/xenial-amd64/build"
BUILDRESULT="/var/cache/pbuilder/xenial-amd64/result"
APTCACHE="/var/cache/pbuilder/xenial-amd64/aptcache"
HOOKDIR="/etc/pbuilder/xenial-amd64/hooks"
CCACHEDIR="/var/cache/pbuilder/xenial-amd64/ccache"

# Build Options
CPUS=`grep -c ^processor /proc/cpuinfo`
DEBBUILDOPTS="-j${CPUS}"

# Environment Options
BINDMOUNTS="$BUILDRESULT /run/dbus /var/lib/dbus"
EXTRAPACKAGES="apt-utils wget eatmydata apt-transport-https ca-certificates 
gnupg gnupg2 "
DEBEMAIL=""
PBUILDERROOTCMD="sudo"
BUILDUSERID=12345


# Exports for the environment
export CCACHE_TEMPDIR="/var/cache/pbuilder/xenial-amd64/ccache/tmp"
export CCACHE_NOSTATS=1
export http_proxy=$http_proxy
export https_proxy=$https_proxy
export no_proxy=$no_proxy

#use eatmydata to avoid fsync in the chroots
export 
LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}/usr/lib/x86_64-linux-gnu/libeatmydata.so"
```

Before running pbuilder:
vagrant@ubuntu-bionic:~$ mount | grep shm
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
vagrant@ubuntu-bionic:~$ ls -l /dev | grep shm
drwxrwxrwt 2 root root          40 Jan 29 16:51 shm

After:
vagrant@ubuntu-bionic:~$ mount | grep shm
<no output>
vagrant@ubuntu-bionic:~$ ls -l /dev | grep shm
drwxr-xr-x 2 root root          40 Jan 29 16:21 shm

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: pbuilder 0.229.1
ProcVersionSignature: Ubuntu 4.15.0-43.46-generic 4.15.18
Uname: Linux 4.15.0-43-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.5
Architecture: amd64
Date: Tue Jan 29 16:54:47 2019
PackageArchitecture: all
SourcePackage: pbuilder
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: pbuilder (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug bionic uec-images

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1813802

Title:
  Running pbuilder (on bionic) in parallel when bind-mounting /dev/shm
  causes the host tmpfs to unmount

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/pbuilder/+bug/1813802/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to