Quoting Tycho Andersen ([email protected]): > CRIU can get confused if there are two dumps that are written to the same > directory, so we make some minimal effort to prevent people from doing this. > This is a better alternative than forcing liblxc to create the directory, > since > it is mostly race free (and neither solution is bullet proof anyway if someone > rsyncs some bad images over the top of the good ones). > > Signed-off-by: Tycho Andersen <[email protected]>
Acked-by: Serge E. Hallyn <[email protected]> > --- > src/lxc/lxccontainer.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c > index dbcee99..8999f44 100644 > --- a/src/lxc/lxccontainer.c > +++ b/src/lxc/lxccontainer.c > @@ -3683,6 +3683,7 @@ static bool do_lxcapi_checkpoint(struct lxc_container > *c, char *directory, bool > { > pid_t pid; > int status; > + char path[PATH_MAX]; > > if (!criu_ok(c)) > return false; > @@ -3690,6 +3691,15 @@ static bool do_lxcapi_checkpoint(struct lxc_container > *c, char *directory, bool > if (mkdir(directory, 0700) < 0 && errno != EEXIST) > return false; > > + status = snprintf(path, sizeof(path), "%s/inventory.img", directory); > + if (status < 0 || status >= sizeof(path)) > + return false; > + > + if (access(path, F_OK) == 0) { > + ERROR("please use a fresh directory for the dump directory\n"); > + return false; > + } > + > if (!dump_net_info(c, directory)) > return false; > > -- > 2.1.4 > > _______________________________________________ > lxc-devel mailing list > [email protected] > http://lists.linuxcontainers.org/listinfo/lxc-devel _______________________________________________ lxc-devel mailing list [email protected] http://lists.linuxcontainers.org/listinfo/lxc-devel
