set root propagation based on volume properties

Set the root propagation based on the properties of volumes and default
mounts.  To remain compatibility, follow the semantics of Docker.  If a
volume is shared, keep the root propagation shared which works for slave
and private volumes too.  For slave volumes, it can either be shared or
rshared.  Do not change the root propagation for private volumes and
stick with the default.

Fixes: #1834
Signed-off-by: Valentin Rothberg <vrothberg@suse.com>
This commit is contained in:
Valentin Rothberg
2018-11-21 15:56:31 +01:00
committed by Valentin Rothberg
parent 1fdfeb8710
commit 0e2042ebd7
3 changed files with 48 additions and 1 deletions

18
libpod/mounts_linux.go Normal file
View File

@ -0,0 +1,18 @@
// +build linux
package libpod
const (
// MountPrivate represents the private mount option.
MountPrivate = "private"
// MountRPrivate represents the rprivate mount option.
MountRPrivate = "rprivate"
// MountShared represents the shared mount option.
MountShared = "shared"
// MountRShared represents the rshared mount option.
MountRShared = "rshared"
// MountSlave represents the slave mount option.
MountSlave = "slave"
// MountRSlave represents the rslave mount option.
MountRSlave = "rslave"
)