Message ID | 0cefd28a-2b5f-eede-4e9d-96b1d4710334@virtuozzo.com |
---|---|
State | Accepted |
Series | "CRIU 3.1 released" |
Headers | show |
diff --git a/criu/proc_parse.c b/criu/proc_parse.c index f1237cf9..708f41c6 100644 --- a/criu/proc_parse.c +++ b/criu/proc_parse.c @@ -2272,8 +2272,13 @@ int parse_cgroup_file(FILE *f, struct list_head *retl, unsigned int *n) * 2:name=systemd:/user.slice/user-1000.slice/session-1.scope */ name = strchr(buf, ':'); - if (name) + if (name) { path = strchr(++name, ':'); + if (*name == ':') { /* unified hier */ + xfree(ncc); + continue; + } + } if (!name || !path) { pr_err("Failed parsing cgroup %s\n", buf); xfree(ncc); @@ -2437,6 +2442,9 @@ int collect_controllers(struct list_head *cgroups, unsigned int *n_cgroups) } controllers++; + if (*controllers == ':') /* unified hier */ + continue; + off = strchr(controllers, ':'); if (!off) { pr_err("Unable to parse \"%s\"\n", buf);
On Tue, May 23, 2017 at 01:41:28PM +0300, Pavel Emelyanov wrote: > On 05/23/2017 01:05 PM, Pavel Emelyanov wrote: > > On 05/23/2017 09:36 AM, Adrian Reber wrote: > >> On Mon, May 22, 2017 at 10:59:35PM +0300, Pavel Emelyanov wrote: > >>> On 05/22/2017 09:36 PM, Adrian Reber wrote: > >>> > >>>>> Hm... I'm trying to install Fedora26-Alpha into a VM by using std network > >>>>> install from libvirt and every attempt finishes with "no space left on > >>>>> device" error, while I _do_ have space on both -- virtual and physical > >>>>> disks. What's the image you've installed fedora from? > >>>> > >>>> Hmm... My installation is also in a VM but maybe a year old. I cannot > >>>> remember when and how I installed it. > >>> > >>> OK, it wanted 2Gigs of RAM to make install work :) Now I have Fedora-26 > >>> installed and criu/master compiled: > >>> > >>> # ./zdtm.py run -t zdtm/static/env00 -f h > >>> === Run 1/1 ================ zdtm/static/env00 > >>> > >>> ========================== Run zdtm/static/env00 in h ========================== > >>> Start test > >>> ./env00 --pidfile=env00.pid --outfile=env00.out --envname=ENV_00_TEST > >>> Run criu dump > >>> Run criu restore > >>> Send the 15 signal to 24 > >>> Wait for zdtm/static/env00(24) to die for 0.100000 > >>> ========================= Test zdtm/static/env00 PASS ========================== > >>> > >>> The ns and uns flavors also work. How can I reproduce the hang you're seeing? > >> > >> Interesting, zdtm also works for me, but I am not able to dump other > >> processes like: https://lisas.de/~adrian/memcmp.c > >> > >> criu dump -t `pidof memcmp` -j -vvvv > >> > >> Both the criu from my RPM and from the git checkout master does not > >> work. zdtm works from git master. > > > > Yup, it hangs for me as well :) will check. > > OK, so it hangs while dumping cgroup with index 0, this is unified > hierarchy. We have https://github.com/xemul/criu/issues/252 :) > > Adrian, would you check whether this patch helps? On my box memcmp > is dumpable and cgroup_stray too Yes, with this patch dumping memcmp and cgroup_stray works. Thanks. Adrian