• Andrew Vagin's avatar
    cgroup: don't look up existing mount point · dda742ec
    Andrew Vagin authored
    A mount point, which is mounted by someone else, may be umounted in
    any moment.
    
    For example the test system executes tests concurrently and sometimes
    one test looks up a mount point, which has been mounted by another test.
    
    ==================================== ERROR ====================================
    Test: zdtm/live/static/inotify00, Namespace: 1
    Dump log   : /var/lib/jenkins/jobs/CRIU-dump/workspace/test/dump/inotify00/15535/1/dump.log
    --------------------------------- grep Error ---------------------------------
    (00.021951) Error (cgroup.c:409): cg: failed walking /var/lib/jenkins/jobs/CRIU-dump/workspace/test/dump/signalfd00/15538/1/.criu.cgmounts.UGj28v/ for empty cgroups
    (00.021967) Error (cr-dump.c:1601): Dump core (pid: 15535) failed with -1
    (00.025509) Error (cr-dump.c:1914): Dumping FAILED.
    ------------------------------------- END -------------------------------------
    ================================= ERROR OVER =================================
    
    In the previous patch I suggested to open a mount point, but it brought
    other problems. We may open a directory where a cgroup mount has been
    umounted and an owner will get EBUSY on attempt to remove this
    directory.
    
    Reported-by: Jenkins Criuovich
    Acked-by: 's avatarTycho Andersen <tycho.andersen@canonical.com>
    Signed-off-by: 's avatarAndrew Vagin <avagin@openvz.org>
    Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
    dda742ec
cgroup.c 16.9 KB