Commit graph

5 commits

Author SHA1 Message Date
Andrei Vagin
ab6191ccd3 zdtm: use unique holder for cgroups
The idea that each zdtm.py should have own helder, so that two zdtm.py that are
running on the same host don't effect each other.

Fixes: #1774
Signed-off-by: Andrei Vagin <avagin@google.com>
2022-04-28 17:53:52 -07:00
Tycho Andersen
ca7841601e tests: prevent zdtm_mount_cgroups from failing w/ EBUSY
Sometimes I get:

sudo ./zdtm.py run -t zdtm/live/static/cgroup03
umount: /home/tycho/packages/criu/test/zdtm.qPwsoO: target is busy
        (In some cases useful info about processes that
         use the device is found by lsof(8) or fuser(1).)
Traceback (most recent call last):
  File "./zdtm.py", line 1401, in <module>
    tst.available()
  File "./zdtm.py", line 435, in available
    subprocess.check_call(["flock", "zdtm_mount_cgroups", "./zdtm_mount_cgroups"])
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['flock', 'zdtm_mount_cgroups', './zdtm_mount_cgroups']' returned non-zero exit status 1

let's use a lazy unmount so we avoid this.

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Acked-by: Andrew Vagin <avagin@virtuozzo.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
2016-02-03 16:25:28 +03:00
Pavel Emelyanov
400dbd6ab6 zdtm.py: Call zdtm_mount_cgroups in advance
This script prepares the cgroups hierarchies that are used by
tests to avoid creation of those in parallel with tests, that
do not expect them to appear.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-30 15:55:41 +04:00
Andrey Vagin
8329f06145 zdtm: suppress error messages if a cgroup holder exists
mkdir: cannot create directory ‘zdtm.mpAWGL/holder’: File exists

Reported-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-03-27 14:02:17 +03:00
Andrey Vagin
eda6b3d002 zdtm: don't call mount_cgroups a few times concurrently
Here is a race now:
./zdtm.sh --ct -d -C -x static/cgroup02 ns/static/pipe02 &> ns_static_pipe02.log || \
{ flock Makefile cat ns_static_pipe02.log; exit 1; }
./zdtm.sh --ct -d -C -x static/cgroup02 ns/static/busyloop00 &> ns_static_busyloop00.log || \
{ flock Makefile cat ns_static_busyloop00.log; exit 1; }
make[3]: `zdtm_ct' is up to date.
mkdir: cannot create directory ‘zdtm.GgIjUS/holder’: File exists

Reported-by: Mr Jenkins
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2014-09-22 12:15:45 +04:00