On Tue, Apr 4, 2017 at 9:01 PM, Tycho Andersen <tycho@xxxxxxxxxx> wrote: > On Tue, Apr 04, 2017 at 12:47:52PM -0500, Serge E. Hallyn wrote: >> > Would lxc-snapshot gain anything from the ability to fsfreeze an overlay >> > mount? >> >> lxc-snapshot only works on stopped containers. 'lxc snapshot' can do live >> snapshots using criu. Tycho, does that do anything right now to freeze the >> fs? > > Not that I'm aware of (CRIU might, but we don't in liblxc). > >> I'm not sure that freezing all the tasks is necessarily enough to settle >> the fs, but I assume you're doing something about that already? > > I suspect it's not, but we're not doing anything besides freezing the > tasks. In fact, we freeze the tasks by using the freezer cgroup, > which itself is buggy, since the freezer cgroup can race with various > filesystems. So, freezing tasks is hard, and I haven't even thought > about how to freeze the fs for real :) > > But in any case, an fs freezing primitive does sound useful for > checkpoint restore, assuming that we're right and freezing the tasks > is simply not enough. > So I already asked Pavel that question and he said that freezing the tasks is enough. I am not convinced it is really enough to bring a file system image (i.e. underlying blockdev) to a quiescent state, but I think it may be enough for getting a stable view of the mounted file system, so the files could be dumped somewhere. I am guessing is what lxc snapshot does? I still didn't understand wrt lxc snapshot, is there a use case for taking live snapshots without using CRIU? (because freezer cgroup mentioned races or whatnot?). It's definitely possible with btrfs and if my overlayfs freeze patches are not terribly wrong, then it should be easy with overlayfs as well. Does lxc snapshot already support live snapshot of btrfs container? If there is interest, I can try to do a POC of live lxc snapshot of an overlayfs container. Amir.