You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by ji...@apache.org on 2016/03/31 07:01:15 UTC
mesos git commit: Added support for "overlay" keyword.
Repository: mesos
Updated Branches:
refs/heads/master 3f0d074ea -> e66a7790b
Added support for "overlay" keyword.
The "overlayfs" was renamed to "overlay" in kernel 4.2, for overlay
support check function, it should check both "overlay" and "overlayfs"
in "/proc/filesystems".
Review: https://reviews.apache.org/r/44421/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/e66a7790
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/e66a7790
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/e66a7790
Branch: refs/heads/master
Commit: e66a7790bce53209ec3eabe51d986f68ce4c0928
Parents: 3f0d074
Author: Guangya Liu <gy...@gmail.com>
Authored: Wed Mar 30 21:59:03 2016 -0700
Committer: Jie Yu <yu...@gmail.com>
Committed: Wed Mar 30 22:00:58 2016 -0700
----------------------------------------------------------------------
src/linux/fs.cpp | 20 ++++++++++++++++++++
src/linux/fs.hpp | 8 ++++++++
.../containerizer/mesos/provisioner/backend.cpp | 2 +-
.../mesos/provisioner/backends/overlay.cpp | 2 +-
src/tests/environment.cpp | 2 +-
5 files changed, 31 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/e66a7790/src/linux/fs.cpp
----------------------------------------------------------------------
diff --git a/src/linux/fs.cpp b/src/linux/fs.cpp
index dbf9475..306beab 100644
--- a/src/linux/fs.cpp
+++ b/src/linux/fs.cpp
@@ -68,6 +68,26 @@ Try<bool> supported(const std::string& fsname)
}
+Try<bool> overlay::supported()
+{
+ Try<bool> overlay = fs::supported("overlay");
+ if (overlay.isError()) {
+ return Error(overlay.error());
+ } else if (overlay.get() == true) {
+ return true;
+ }
+
+ Try<bool> overlayfs = fs::supported("overlayfs");
+ if (overlayfs.isError()) {
+ return Error(overlayfs.error());
+ } else if (overlayfs.get() == true) {
+ return true;
+ }
+
+ return false;
+}
+
+
Try<MountInfoTable> MountInfoTable::read(const Option<pid_t>& pid)
{
MountInfoTable table;
http://git-wip-us.apache.org/repos/asf/mesos/blob/e66a7790/src/linux/fs.hpp
----------------------------------------------------------------------
diff --git a/src/linux/fs.hpp b/src/linux/fs.hpp
index 4525a5d..5951f3f 100644
--- a/src/linux/fs.hpp
+++ b/src/linux/fs.hpp
@@ -156,6 +156,14 @@ namespace fs {
Try<bool> supported(const std::string& fsname);
+namespace overlay {
+
+// Check if overlay fs is supported.
+Try<bool> supported();
+
+} // namespace overlay {
+
+
// TODO(idownes): These three variations on mount information should
// be consolidated and moved to stout, along with mount and umount.
http://git-wip-us.apache.org/repos/asf/mesos/blob/e66a7790/src/slave/containerizer/mesos/provisioner/backend.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/provisioner/backend.cpp b/src/slave/containerizer/mesos/provisioner/backend.cpp
index 5565254..b2a20b7 100644
--- a/src/slave/containerizer/mesos/provisioner/backend.cpp
+++ b/src/slave/containerizer/mesos/provisioner/backend.cpp
@@ -47,7 +47,7 @@ hashmap<string, Owned<Backend>> Backend::create(const Flags& flags)
#ifdef __linux__
creators.put("bind", &BindBackend::create);
- Try<bool> overlayfsSupported = fs::supported("overlayfs");
+ Try<bool> overlayfsSupported = fs::overlay::supported();
if (overlayfsSupported.isError()) {
LOG(WARNING) << "Failed to check overlayfs availability: '"
<< overlayfsSupported.error();
http://git-wip-us.apache.org/repos/asf/mesos/blob/e66a7790/src/slave/containerizer/mesos/provisioner/backends/overlay.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/provisioner/backends/overlay.cpp b/src/slave/containerizer/mesos/provisioner/backends/overlay.cpp
index 5cc0f8b..93892a7 100644
--- a/src/slave/containerizer/mesos/provisioner/backends/overlay.cpp
+++ b/src/slave/containerizer/mesos/provisioner/backends/overlay.cpp
@@ -66,7 +66,7 @@ Try<Owned<Backend>> OverlayBackend::create(const Flags&)
user.get());
}
- Try<bool> supported = fs::supported("overlayfs");
+ Try<bool> supported = fs::overlay::supported();
if (supported.isError()) {
return Error(supported.error());
}
http://git-wip-us.apache.org/repos/asf/mesos/blob/e66a7790/src/tests/environment.cpp
----------------------------------------------------------------------
diff --git a/src/tests/environment.cpp b/src/tests/environment.cpp
index 7617e43..90dbe94 100644
--- a/src/tests/environment.cpp
+++ b/src/tests/environment.cpp
@@ -465,7 +465,7 @@ public:
OverlayFSTestFilter()
{
#ifdef __linux__
- Try<bool> check = fs::supported("overlayfs");
+ Try<bool> check = fs::overlay::supported();
if (check.isError()) {
overlayfsError = check.error();
} else if (!check.get()) {