Merge release-20191114.0-32-g97d2c9a (automated)
This commit is contained in:
commit
876b3bbcfe
|
@ -465,6 +465,13 @@ func (m *mountHint) checkCompatible(mount specs.Mount) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *mountHint) fileAccessType() FileAccessType {
|
||||||
|
if m.share == container {
|
||||||
|
return FileAccessExclusive
|
||||||
|
}
|
||||||
|
return FileAccessShared
|
||||||
|
}
|
||||||
|
|
||||||
func filterUnsupportedOptions(mount specs.Mount) []string {
|
func filterUnsupportedOptions(mount specs.Mount) []string {
|
||||||
rv := make([]string, 0, len(mount.Options))
|
rv := make([]string, 0, len(mount.Options))
|
||||||
for _, o := range mount.Options {
|
for _, o := range mount.Options {
|
||||||
|
@ -764,8 +771,7 @@ func (c *containerMounter) getMountNameAndOptions(conf *Config, m specs.Mount) (
|
||||||
case bind:
|
case bind:
|
||||||
fd := c.fds.remove()
|
fd := c.fds.remove()
|
||||||
fsName = "9p"
|
fsName = "9p"
|
||||||
// Non-root bind mounts are always shared.
|
opts = p9MountOptions(fd, c.getMountAccessType(m))
|
||||||
opts = p9MountOptions(fd, FileAccessShared)
|
|
||||||
// If configured, add overlay to all writable mounts.
|
// If configured, add overlay to all writable mounts.
|
||||||
useOverlay = conf.Overlay && !mountFlags(m.Options).ReadOnly
|
useOverlay = conf.Overlay && !mountFlags(m.Options).ReadOnly
|
||||||
|
|
||||||
|
@ -778,6 +784,14 @@ func (c *containerMounter) getMountNameAndOptions(conf *Config, m specs.Mount) (
|
||||||
return fsName, opts, useOverlay, nil
|
return fsName, opts, useOverlay, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *containerMounter) getMountAccessType(mount specs.Mount) FileAccessType {
|
||||||
|
if hint := c.hints.findMount(mount); hint != nil {
|
||||||
|
return hint.fileAccessType()
|
||||||
|
}
|
||||||
|
// Non-root bind mounts are always shared if no hints were provided.
|
||||||
|
return FileAccessShared
|
||||||
|
}
|
||||||
|
|
||||||
// mountSubmount mounts volumes inside the container's root. Because mounts may
|
// mountSubmount mounts volumes inside the container's root. Because mounts may
|
||||||
// be readonly, a lower ramfs overlay is added to create the mount point dir.
|
// be readonly, a lower ramfs overlay is added to create the mount point dir.
|
||||||
// Another overlay is added with tmpfs on top if Config.Overlay is true.
|
// Another overlay is added with tmpfs on top if Config.Overlay is true.
|
||||||
|
|
Loading…
Reference in New Issue