From: Christian Brauner Date: Tue, 13 Sep 2016 15:18:23 +0000 (+0200) Subject: lxczfs: small fixes X-Git-Tag: lxc-1.0.9~27 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6a04409aa7f1d5507e7e20d2ccb95bb5bafe765a;p=thirdparty%2Flxc.git lxczfs: small fixes - We expect destroy to fail in zfs_clone() so try to silence it so users are not irritated when they create zfs snapshots. - Add -r recursive to zfs_destroy(). This code is only hit when a) the container has no snapshots or b) the user calls destroy with snapshots. So this should be safe. Without -r snapshots will remain. Signed-off-by: Christian Brauner --- diff --git a/src/lxc/bdev.c b/src/lxc/bdev.c index cbfb1eccf..529b92b4f 100644 --- a/src/lxc/bdev.c +++ b/src/lxc/bdev.c @@ -660,6 +660,9 @@ static int zfs_clone(const char *opath, const char *npath, const char *oname, if ((pid = fork()) < 0) return -1; if (!pid) { + int dev0 = open("/dev/null", O_WRONLY); + if (dev0 >= 0) + dup2(dev0, STDERR_FILENO); execlp("zfs", "zfs", "destroy", path1, NULL); exit(1); } @@ -740,7 +743,7 @@ static int zfs_destroy(struct bdev *orig) return -1; *p = '\0'; - execlp("zfs", "zfs", "destroy", output, NULL); + execlp("zfs", "zfs", "destroy", "-r", output, NULL); exit(1); }