The following pull request was submitted through Github.
It can be accessed and reviewed at: https://github.com/lxc/lxd/pull/6558

This e-mail was sent by the LXC bot, direct replies will not reach the author
unless they happen to be subscribed to this list.

=== Description (from pull-request) ===
Adds `LXD_SHIFTFS_DISABLE` env var to allow shiftfs to be disabled at runtime to allow testing of traditional UID shifting on kernels with shiftfs support.
From cf4a59f1097729524c200732bd066e211b0885b6 Mon Sep 17 00:00:00 2001
From: Thomas Parrott <thomas.parr...@canonical.com>
Date: Thu, 5 Dec 2019 11:35:52 +0000
Subject: [PATCH 1/3] lxd/backup: Comment consistency

Signed-off-by: Thomas Parrott <thomas.parr...@canonical.com>
---
 lxd/backup.go | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lxd/backup.go b/lxd/backup.go
index 15189bffd7..a01a9eb23f 100644
--- a/lxd/backup.go
+++ b/lxd/backup.go
@@ -63,6 +63,7 @@ func backupCreate(s *state.State, args db.InstanceBackupArgs, 
sourceInst instanc
        }
        defer os.RemoveAll(tmpPath)
 
+       // Check if we can load new storage layer for pool driver type.
        pool, err := storagePools.GetPoolByInstance(s, sourceInst)
        if err != storageDrivers.ErrUnknownDriver && err != 
storageDrivers.ErrNotImplemented {
                if err != nil {

From 3e7ea65dbd92539bc05cf95fed3dab330d18131e Mon Sep 17 00:00:00 2001
From: Thomas Parrott <thomas.parr...@canonical.com>
Date: Thu, 5 Dec 2019 11:36:49 +0000
Subject: [PATCH 2/3] lxd/daemon: Adds LXD_SHIFTFS_DISABLE env var to disable
 shiftfs

Useful when testing traditional UID shifting.

Signed-off-by: Thomas Parrott <thomas.parr...@canonical.com>
---
 lxd/daemon.go | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/lxd/daemon.go b/lxd/daemon.go
index c5416d7dfc..5c1b92cf61 100644
--- a/lxd/daemon.go
+++ b/lxd/daemon.go
@@ -620,11 +620,16 @@ func (d *Daemon) init() error {
                logger.Infof(" - unprivileged file capabilities: no")
        }
 
-       if util.HasFilesystem("shiftfs") || util.LoadModule("shiftfs") == nil {
-               d.os.Shiftfs = true
-               logger.Infof(" - shiftfs support: yes")
+       // Detect shiftfs support.
+       if shared.IsTrue(os.Getenv("LXD_SHIFTFS_DISABLE")) {
+               logger.Infof(" - shiftfs support: disabled")
        } else {
-               logger.Infof(" - shiftfs support: no")
+               if util.HasFilesystem("shiftfs") || util.LoadModule("shiftfs") 
== nil {
+                       d.os.Shiftfs = true
+                       logger.Infof(" - shiftfs support: yes")
+               } else {
+                       logger.Infof(" - shiftfs support: no")
+               }
        }
 
        // Detect LXC features

From 735e1bf4f5df8cd75557c7afdf365fc4500385bb Mon Sep 17 00:00:00 2001
From: Thomas Parrott <thomas.parr...@canonical.com>
Date: Thu, 5 Dec 2019 11:38:48 +0000
Subject: [PATCH 3/3] doc/environment: Documents LXD_SHIFTFS_DISABLE env var

Signed-off-by: Thomas Parrott <thomas.parr...@canonical.com>
---
 doc/environment.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/doc/environment.md b/doc/environment.md
index 2925711467..88246c1890 100644
--- a/doc/environment.md
+++ b/doc/environment.md
@@ -28,3 +28,4 @@ Name                            | Description
 `LXD_SECURITY_APPARMOR`         | If set to `false`, forces AppArmor off
 `LXD_UNPRIVILEGED_ONLY`         | If set to `true`, enforces that only 
unprivileged containers can be created. Note that any privileged containers 
that have been created before setting LXD_UNPRIVILEGED_ONLY will continue to be 
privileged. To use this option effectively it should be set when the LXD daemon 
is first setup.
 `LXD_OVMF_PATH`                 | Path to an OVMF build including 
`OVMF_CODE.fd` and `OVMF_VARS.ms.fd`
+`LXD_SHIFTFS_DISABLE`           | Disable shiftfs support (useful when testing 
traditional UID shifting)
_______________________________________________
lxc-devel mailing list
lxc-devel@lists.linuxcontainers.org
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to