8000 overlay[2]: rm fs checks · moby/moby@5b6f2e1 · GitHub
[go: up one dir, main page]

Skip to content

Commit 5b6f2e1

Browse files
kolyshkinAkihiroSuda
authored andcommitted
overlay[2]: rm fs checks
Now that we do check if overlay is working by performing an actual overlayfs mount, there's no need in extra checks for the kernel version or the filesystem type. Actual mount check is sufficient. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com> (cherry picked from commit e226aea) Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
1 parent 1b0edb1 commit 5b6f2e1

File tree

2 files changed

+0
-45
lines changed

2 files changed

+0
-45
lines changed

daemon/graphdriver/overlay/overlay.go

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -136,20 +136,6 @@ func Init(home string, options []string, uidMaps, gidMaps []idtools.IDMap) (grap
136136
return nil, graphdriver.ErrNotSupported
137137
}
138138

139-
fsMagic, err := graphdriver.GetFSMagic(testdir)
140-
if err != nil {
141-
return nil, err
142-
}
143-
if fsName, ok := graphdriver.FsNames[fsMagic]; ok {
144-
backingFs = fsName
145-
}
146-
147-
switch fsMagic {
148-
case graphdriver.FsMagicAufs, graphdriver.FsMagicBtrfs, graphdriver.FsMagicEcryptfs, graphdriver.FsMagicNfsFs, graphdriver.FsMagicOverlay, graphdriver.FsMagicZfs:
149-
logrus.WithField("storage-driver", "overlay").Errorf("'overlay' is not supported over %s", backingFs)
150-
return nil, graphdriver.ErrIncompatibleFS
151-
}
152-
153139
supportsDType, err := fsutils.SupportsDType(testdir)
154140
if err != nil {
155141
return nil, err

daemon/graphdriver/overlay2/overlay.go

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import (
2727
"github.com/docker/docker/pkg/locker"
2828
"github.com/docker/docker/pkg/mount"
2929
"github.com/docker/docker/pkg/parsers"
30-
"github.com/docker/docker/pkg/parsers/kernel"
3130
"github.com/docker/docker/pkg/system"
3231
"github.com/docker/go-units"
3332
rsystem "github.com/opencontainers/runc/libcontainer/system"
@@ -132,12 +131,6 @@ func Init(home string, options []string, uidMaps, gidMaps []idtools.IDMap) (grap
132131
return nil, err
133132
}
134133

135-
// require kernel 4.0.0 to ensure multiple lower dirs are supported
136-
v, err := kernel.GetKernelVersion()
137-
if err != nil {
138-
return nil, err
139-
}
140-
141134
// Perform feature detection on /var/lib/docker/overlay2 if it's an existing directory.
142135
// This covers situations where /var/lib/docker/overlay2 is a mount, and on a different
143136
// filesystem than /var/lib/docker.
@@ -152,30 +145,6 @@ func Init(home string, options []string, uidMaps, gidMaps []idtools.IDMap) (grap
152145
return nil, graphdriver.ErrNotSupported
153146
}
154147

155-
fsMagic, err := graphdriver.GetFSMagic(testdir)
156-
if err != nil {
157-
return nil, err
158-
}
159-
if fsName, ok := graphdriver.FsNames[fsMagic]; ok {
160-
backingFs = fsName
161-
}
162-
163-
switch fsMagic {
164-
case graphdriver.FsMagicAufs, graphdriver.FsMagicEcryptfs, graphdriver.FsMagicNfsFs, graphdriver.FsMagicOverlay, graphdriver.FsMagicZfs:
165-
logger.Errorf("'overlay2' is not supported over %s", backingFs)
166-
return nil, graphdriver.ErrIncompatibleFS
167-
case graphdriver.FsMagicBtrfs:
168-
// Support for OverlayFS on BTRFS was added in kernel 4.7
169-
// See https://btrfs.wiki.kernel.org/index.php/Changelog
170-
if kernel.CompareKernelVersion(*v, kernel.VersionInfo{Kernel: 4, Major: 7, Minor: 0}) < 0 {
171-
if !opts.overrideKernelCheck {
172-
logger.Errorf("'overlay2' requires kernel 4.7 to use on %s", backingFs)
173-
return nil, graphdriver.ErrIncompatibleFS
174-
}
175-
logger.Warn("Using pre-4.7.0 kernel for overlay2 on btrfs, may require kernel update")
176-
}
177-
}
178-
179148
supportsDType, err := fsutils.SupportsDType(testdir)
180149
if err != nil {
181150
return nil, err

0 commit comments

Comments
 (0)
0