The following pull request was submitted through Github. It can be accessed and reviewed at: https://github.com/lxc/lxc/pull/1089
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) === This is an old option that we probably should have exposed long ago :) Signed-off-by: Tycho Andersen <tycho.ander...@canonical.com>
From b2b7b0d22395929f822a0c524e31bdc099e758d0 Mon Sep 17 00:00:00 2001 From: Tycho Andersen <tycho.ander...@canonical.com> Date: Tue, 19 Jul 2016 14:27:26 -0600 Subject: [PATCH] c/r: add support for ghost-limit in CRIU This is an old option that we probably should have exposed long ago :) Signed-off-by: Tycho Andersen <tycho.ander...@canonical.com> --- src/lxc/criu.c | 17 +++++++++++++++++ src/lxc/lxccontainer.h | 6 ++++++ 2 files changed, 23 insertions(+) diff --git a/src/lxc/criu.c b/src/lxc/criu.c index 804fd41..d330d72 100644 --- a/src/lxc/criu.c +++ b/src/lxc/criu.c @@ -169,6 +169,10 @@ static void exec_criu(struct criu_opts *opts) /* --force-irmap */ if (!opts->user->preserves_inodes) static_args++; + + /* --ghost-limit 1024 */ + if (opts->user->ghost_limit) + static_args += 2; } else if (strcmp(opts->action, "restore") == 0) { /* --root $(lxc_mount_point) --restore-detached * --restore-sibling --pidfile $foo --cgroup-root $foo @@ -300,6 +304,19 @@ static void exec_criu(struct criu_opts *opts) if (!opts->user->preserves_inodes) DECLARE_ARG("--force-irmap"); + if (opts->user->ghost_limit) { + char ghost_limit[32]; + + ret = sprintf(ghost_limit, "%lu", opts->user->ghost_limit); + if (ret < 0 || ret >= sizeof(ghost_limit)) { + ERROR("failed to print ghost limit %lu", opts->user->ghost_limit); + goto err; + } + + DECLARE_ARG("--ghost-limit"); + DECLARE_ARG(ghost_limit); + } + /* only for final dump */ if (strcmp(opts->action, "dump") == 0 && !opts->user->stop) DECLARE_ARG("--leave-running"); diff --git a/src/lxc/lxccontainer.h b/src/lxc/lxccontainer.h index e4915d2..06bec58 100644 --- a/src/lxc/lxccontainer.h +++ b/src/lxc/lxccontainer.h @@ -902,6 +902,12 @@ struct migrate_opts { * unconditionally disable this feature. In-flight connections are * not fully established TCP connections: SYN, SYN-ACK */ bool disable_skip_in_flight; + + /* This is the maximum file size for deleted files (which CRIU calls + * "ghost" files) that will be handled. 0 indicates the CRIU default, + * which at this time is 1MB. + */ + uint64_t ghost_limit; }; /*!
_______________________________________________ lxc-devel mailing list lxc-devel@lists.linuxcontainers.org http://lists.linuxcontainers.org/listinfo/lxc-devel