[CRIU] [PATCH] Skip restoring certain cgroup root directories when using full mode

Hui Kang hkang.sunysb at gmail.com
Wed Aug 26 20:12:02 PDT 2015


On Wed, Aug 26, 2015 at 12:27 AM, Andrew Vagin <avagin at gmail.com> wrote:
> On Tue, Aug 25, 2015 at 10:25:02PM -0400, Hui Kang wrote:
>>
>> Hi, Pavel
>> I still have difficulty in producing the bug you described. I have
>> /sys/fs/cgroup/cpuset (which is the root) and /sys/fs/cgroup/cpuset/A.
>> I have added task 1001 to the root and 1002 to
>> /sys/fs/cgroup/cpuset/A. The patch has no problem in restoring the the
>> task in /A.
>>
>> If this is the not nested case you described, could you give more
>> detailed about the case you think of? Thanks.
>
> I think I've reproduced this bug:
> https://asciinema.org/a/cv3qlitwvvt2guyi2woaok056

Hi, Andew,
I created my own script to reproduce the bug of not restoring cpu
share. The script is

#! /bin/bash
set -e -x
echo $$
mkdir -p /sys/fs/cgroup/cpu/A
echo 512 > /sys/fs/cgroup/cpu/A/cpu.shares
sleep 1000 &
echo $! > /sys/fs/cgroup/cpu/A/tasks
wait
[ `cat /sys/fs/cgroup/cpu/A/cpu.shares` -ne 512 ] && echo FAIL

It will create two pid, say the first is 18001 and the second is 18002.
When I run

criu dump -t 18001 -vvvv --log-file dump.log -j  --manage-cgroup=ful

It gives me the error

Dumping file-locks
(00.028444)
(00.028451) Dumping pstree (pid: 18672)
(00.028458) ----------------------------------------
(00.028466) Process: 18672(18672)
(00.028506) Process: 18674(18674)
(00.028516) ----------------------------------------
(00.028619) Error (cgroup.c:807): cg: Non supported sub-cgroups found
(00.028961) Unlock network
(00.028983) Unfreezing tasks into 1
(00.028994) Unseizing 18672 into 1
(00.029081) Unseizing 18674 into 1

I am using the criu from git. Do you know why this happens? Thanks.

- Hui

>
>>
>> - Hui
>>


More information about the CRIU mailing list