Skip to content

Coverage Tests/mount-v2: open_tree EINVAL in uns flavor #2684

@Snorch

Description

@Snorch

We see in multiple PRs (e.g.: #2681 and #2682) that env00 (Coverage Tests) test fails with:

2025-06-21T03:18:18.4387595Z + ./test/zdtm.py run -t zdtm/static/env00 --freezecg zdtm:t --fault 137
2025-06-21T03:18:18.5195779Z userns is supported
...
2025-06-21T03:18:19.2358397Z ========================= Run zdtm/static/env00 in uns =========================
2025-06-21T03:18:19.3086196Z Start test
2025-06-21T03:18:19.3572268Z ./env00 --pidfile=env00.pid --outfile=env00.out --envname=ENV_00_TEST
...
2025-06-21T03:18:19.6194172Z =[log]=> dump/zdtm/static/env00/197/1/restore.log
2025-06-21T03:18:19.6194515Z ------------------------ grep Error ------------------------
2025-06-21T03:18:19.6195032Z b'profiling:/home/runner/work/criu/criu/images/core-mips.gcda:Cannot open'
2025-06-21T03:18:19.6195562Z b'profiling:/home/runner/work/criu/criu/images/core-x86.gcda:Cannot open'
2025-06-21T03:18:19.6196073Z b'profiling:/home/runner/work/criu/criu/images/core.gcda:Cannot open'
2025-06-21T03:18:19.6196562Z b'profiling:/home/runner/work/criu/criu/images/stats.gcda:Cannot open'
2025-06-21T03:18:19.6196954Z b'Error: ipv4: Address already assigned.'
2025-06-21T03:18:19.6197433Z b'Error: ipv6: address already assigned.'
2025-06-21T03:18:19.6197753Z b'(00.067006)      1: mnt-v2: Mount 690 is detected as dir-mount'
2025-06-21T03:18:19.6198227Z b'(00.067008)      1: mnt-v2: Create plain mountpoint /tmp/.criu.mntns.CH1Sn5/mnt-0000000690 for 690'
2025-06-21T03:18:19.6198701Z b'(00.067013)      1: mnt-v2: \tMounting unsupported @690 (0)'
2025-06-21T03:18:19.6199189Z b'(00.067015)      1: mnt-v2: \tBind /home/runner/work/criu/criu to /tmp/.criu.mntns.CH1Sn5/mnt-0000000690'
2025-06-21T03:18:19.6199928Z b'(00.067025)      1: Error (criu/mount-v2.c:319): mnt-v2: Failed to open_tree /home/runner/work/criu/criu: Invalid argument'
2025-06-21T03:18:19.6200427Z b'(00.067742) uns: calling exit_usernsd (-1, 1)'
2025-06-21T03:18:19.6200751Z b'(00.067769) uns: daemon calls 0x557ef0d92410 (222, -1, 1)'
2025-06-21T03:18:19.6201057Z b'(00.067773) uns: `- daemon exits w/ 0'
2025-06-21T03:18:19.6201325Z b'(00.071092) uns: daemon stopped'
2025-06-21T03:18:19.6201630Z b'(00.071101) Error (criu/cr-restore.c:2324): Restoring FAILED.'
2025-06-21T03:18:19.6202094Z b'(00.074514) Error (criu/cgroup.c:1998): cg: cgroupd: recv req error: No such file or directory'
2025-06-21T03:18:19.6202543Z ------------------------ ERROR OVER ------------------------
2025-06-21T03:18:19.6202916Z ################# Test zdtm/static/env00 FAIL at CRIU restore ##################

From code I see two reasons why it can happen:

  1. /home/runner/work/criu/criu is on unbindable mount
  2. /home/runner/work/criu/criu has locked chidren mounts

Not sure why in env00 we have external mounts at all, but that is a secondary question.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions