summaryrefslogtreecommitdiffhomepage
path: root/runsc
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2020-04-23 22:40:10 +0000
committergVisor bot <gvisor-bot@google.com>2020-04-23 22:40:10 +0000
commit621ac539dfe6db975450a12ed4cc0140e3e1d2f5 (patch)
tree6f6f9c1a18e83b4c17921f9ffb7356c3256b4a13 /runsc
parent6b966db0b383c61fdfa6b7f182012282c164cd65 (diff)
parent5042ea7e2cbdc0c04fd454583589a3b1e152f95d (diff)
Merge release-20200323.0-225-g5042ea7 (automated)
Diffstat (limited to 'runsc')
-rwxr-xr-xrunsc/boot/vfs.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/runsc/boot/vfs.go b/runsc/boot/vfs.go
index 82083c57d..bce3a3593 100755
--- a/runsc/boot/vfs.go
+++ b/runsc/boot/vfs.go
@@ -251,6 +251,12 @@ func (c *containerMounter) mountSubmountVFS2(ctx context.Context, conf *Config,
// All writes go to upper, be paranoid and make lower readonly.
opts.ReadOnly = useOverlay
+ if err := c.k.VFS().MkdirAt(ctx, creds, target, &vfs.MkdirOptions{
+ ForSyntheticMountpoint: true,
+ }); err != nil && err != syserror.EEXIST {
+ // Log a warning, but attempt the mount anyway.
+ log.Warningf("Failed to create mount point at %q: %v", submount.Destination, err)
+ }
if err := c.k.VFS().MountAt(ctx, creds, "", target, submount.Type, opts); err != nil {
return fmt.Errorf("failed to mount %q (type: %s): %w, opts: %v", submount.Destination, submount.Type, err, opts)
}