2026-01-20 08:53.00: New job: test mirage/ocaml-9p https://github.com/mirage/ocaml-9p.git#refs/heads/main (a99385884d4c24c5ada8a05520956b7f085d62b5) (linux-arm64:debian-13-5.4_arm64_opam-2.5) Base: ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 Opam project build To reproduce locally: git clone --recursive "https://github.com/mirage/ocaml-9p.git" -b "main" && cd "ocaml-9p" && git reset --hard a9938588 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 # debian-13-5.4_arm64_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam RUN opam init --reinit -ni RUN uname -rs && opam exec -- ocaml -version && opam --version WORKDIR /src RUN sudo chown opam /src RUN cd ~/opam-repository && (git cat-file -e 3259a77d952a829f885db180a223e0c37c1d05e9 || git fetch origin master) && git reset -q --hard 3259a77d952a829f885db180a223e0c37c1d05e9 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 protocol-9p.opam protocol-9p-unix.opam protocol-9p-tool.opam ./ RUN opam pin add -yn protocol-9p.dev './' && \ opam pin add -yn protocol-9p-unix.dev './' && \ opam pin add -yn protocol-9p-tool.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="alcotest.1.9.1 asetmap.0.8.1 astring.0.8.5 base.v0.17.3 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 cstruct-sexp.6.2.0 dune.3.21.0 dune-configurator.3.21.0 fmt.0.11.0 io-page.3.0.0 lambda-term.3.3.3 logs.0.10.0 lwt.6.0.0 lwt_react.1.2.0 mew.0.1.0 mew_vi.0.5.0 mirage-channel.5.0.0 mirage-flow.5.0.0 num.1.6 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 parsexp.v0.17.0 ppx_derivers.1.2.1 ppx_sexp_conv.v0.17.1 ppxlib.0.37.0 ppxlib_jane.v0.17.4 prometheus.1.3 re.1.14.0 react.1.2.2 result.1.5 rresult.0.7.0 sexplib.v0.17.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 topkg.1.1.1 trie.1.0.0 uchar.0.0.2 uucp.17.0.0 uuseg.17.0.0 uutf.1.0.4 win-error.1.0 zed.3.2.3" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.5 --depext-only -y protocol-9p.dev protocol-9p-unix.dev protocol-9p-tool.dev $DEPS RUN opam install $DEPS COPY --chown=1000:1000 . /src RUN opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-01-20 08:53.00: Using cache hint "mirage/ocaml-9p-ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370-debian-13-5.4_arm64_opam-2.5-799653e6f4b551ce990996f151859bce" 2026-01-20 08:53.00: Using OBuilder spec: ((from ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370) (comment debian-13-5.4_arm64_opam-2.5) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (workdir /src) (run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam")) (run (shell "opam init --reinit -ni")) (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) (workdir /src) (run (shell "sudo chown opam /src")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 3259a77d952a829f885db180a223e0c37c1d05e9 || git fetch origin master) && git reset -q --hard 3259a77d952a829f885db180a223e0c37c1d05e9 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src protocol-9p.opam protocol-9p-unix.opam protocol-9p-tool.opam) (dst ./)) (run (network host) (shell "opam pin add -yn protocol-9p.dev './' && \ \nopam pin add -yn protocol-9p-unix.dev './' && \ \nopam pin add -yn protocol-9p-tool.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "alcotest.1.9.1 asetmap.0.8.1 astring.0.8.5 base.v0.17.3 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 cstruct-sexp.6.2.0 dune.3.21.0 dune-configurator.3.21.0 fmt.0.11.0 io-page.3.0.0 lambda-term.3.3.3 logs.0.10.0 lwt.6.0.0 lwt_react.1.2.0 mew.0.1.0 mew_vi.0.5.0 mirage-channel.5.0.0 mirage-flow.5.0.0 num.1.6 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 parsexp.v0.17.0 ppx_derivers.1.2.1 ppx_sexp_conv.v0.17.1 ppxlib.0.37.0 ppxlib_jane.v0.17.4 prometheus.1.3 re.1.14.0 react.1.2.2 result.1.5 rresult.0.7.0 sexplib.v0.17.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 topkg.1.1.1 trie.1.0.0 uchar.0.0.2 uucp.17.0.0 uuseg.17.0.0 uutf.1.0.4 win-error.1.0 zed.3.2.3") (env CI true) (env OCAMLCI true) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y protocol-9p.dev protocol-9p-unix.dev protocol-9p-tool.dev $DEPS")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) (copy (src .) (dst /src)) (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) ) 2026-01-20 08:53.00: Waiting for resource in pool OCluster 2026-01-20 15:16.32: Waiting for worker… 2026-01-20 17:43.57: Got resource from pool OCluster Building on ainia.caelum.ci.dev All commits already cached HEAD is now at a993858 changes for 2.1.0 (from ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370) Unable to find image 'ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370' locally docker.io/ocaml/opam@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370: Pulling from ocaml/opam bdfce8c2bb9c: Pulling fs layer bdfce8c2bb9c: Download complete bdfce8c2bb9c: Pull complete Digest: sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 Status: Downloaded newer image for ocaml/opam@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 2026-01-20 17:43.57 ---> using "9e9b656e9b6bdc237589a9d76f00a1fbae61934b764b5da2a79ad3132262762c" from cache /: (comment debian-13-5.4_arm64_opam-2.5) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (workdir /src) /src: (run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam")) 2026-01-20 17:43.57 ---> using "16d8338ac3f28cc60f8ade39bc00db9fc8ea5e4128cc4217b2f8937c548f693e" from cache /src: (run (shell "opam init --reinit -ni")) Configuring from /home/opam/.opamrc and then from built-in defaults. Checking for available remotes: rsync and local, git. - you won't be able to use mercurial repositories unless you install the hg command on your system. - you won't be able to use darcs repositories unless you install the darcs command on your system. This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted. You may want to back it up before going further. Continue? [Y/n] y Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2026-01-20 17:43.57 ---> using "28ed39bc46dc71b63a4db24822d6116d272e3c3b6cf3a4c750ee0816294d8604" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-85-generic The OCaml toplevel, version 5.4.0 2.5.0 2026-01-20 17:43.57 ---> using "59045ffde86693f70a84c038fc17d2b0f4cca4b6e8597706980c949f95211e91" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-20 17:43.57 ---> using "136ef18ba7fbea384565010841d122831b56c12750f60d960037e100311d559f" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 3259a77d952a829f885db180a223e0c37c1d05e9 || git fetch origin master) && git reset -q --hard 3259a77d952a829f885db180a223e0c37c1d05e9 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD a6b2f19780..1c997ec9e6 master -> origin/master 3259a77d95 Merge pull request #29221 from kandu/lambda-term <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository Already up-to-date. Nothing to do. # To update the current shell environment, run: eval $(opam env) 2026-01-20 17:43.57 ---> using "71d67a368adf8544ebf8dc45c99d175b73cbf738701ed75401fb0d07db5391e8" from cache /src: (copy (src protocol-9p.opam protocol-9p-unix.opam protocol-9p-tool.opam) (dst ./)) 2026-01-20 17:43.57 ---> saved as "1e271388aa41b003d6a252537f4df632b8b913e9570bfc082a0a81250ebff603" /src: (run (network host) (shell "opam pin add -yn protocol-9p.dev './' && \ \nopam pin add -yn protocol-9p-unix.dev './' && \ \nopam pin add -yn protocol-9p-tool.dev './'")) [protocol-9p.dev] synchronised (file:///src) protocol-9p is now pinned to file:///src (version dev) [protocol-9p-unix.dev] synchronised (file:///src) protocol-9p-unix is now pinned to file:///src (version dev) [protocol-9p-tool.dev] synchronised (file:///src) protocol-9p-tool is now pinned to file:///src (version dev) 2026-01-20 17:44.02 ---> saved as "0ca3f3a752a1026640fdf201d02f06a9b7cbe54a8dd91b68034c07c14e6d4f23" /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-20 17:44.03 ---> saved as "2c759c55a389b62e5c641a5397c7c8c32d6d254789c689f92947e94d6c62dc3b" /src: (env DEPS "alcotest.1.9.1 asetmap.0.8.1 astring.0.8.5 base.v0.17.3 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 cstruct-sexp.6.2.0 dune.3.21.0 dune-configurator.3.21.0 fmt.0.11.0 io-page.3.0.0 lambda-term.3.3.3 logs.0.10.0 lwt.6.0.0 lwt_react.1.2.0 mew.0.1.0 mew_vi.0.5.0 mirage-channel.5.0.0 mirage-flow.5.0.0 num.1.6 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 parsexp.v0.17.0 ppx_derivers.1.2.1 ppx_sexp_conv.v0.17.1 ppxlib.0.37.0 ppxlib_jane.v0.17.4 prometheus.1.3 re.1.14.0 react.1.2.2 result.1.5 rresult.0.7.0 sexplib.v0.17.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 topkg.1.1.1 trie.1.0.0 uchar.0.0.2 uucp.17.0.0 uuseg.17.0.0 uutf.1.0.4 win-error.1.0 zed.3.2.3") /src: (env CI true) /src: (env OCAMLCI true) /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y protocol-9p.dev protocol-9p-unix.dev protocol-9p-tool.dev $DEPS")) + /usr/bin/sudo "apt-get" "update" - Get:1 http://deb.debian.org/debian trixie InRelease [140 kB] - Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB] - Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB] - Get:4 http://deb.debian.org/debian trixie/main arm64 Packages [9607 kB] - Get:5 http://deb.debian.org/debian-security trixie-security/main arm64 Packages [96.3 kB] - Fetched 9935 kB in 1s (7919 kB/s) - Reading package lists... <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [protocol-9p.dev] synchronised (file:///src) [protocol-9p-tool.dev] synchronised (file:///src) [protocol-9p-unix.dev] synchronised (file:///src) [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). [NOTE] Package ocaml-config is already installed (current version is 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml is already installed (current version is 5.4.0). [NOTE] Package base-unix is already installed (current version is base). [NOTE] Package base-threads is already installed (current version is base). [NOTE] Package base-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). The following system packages will first need to be installed: pkg-config <><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><> + /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "pkg-config" - Selecting previously unselected package libpkgconf3:arm64. - (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20767 files and directories currently installed.) - Preparing to unpack .../libpkgconf3_1.8.1-4_arm64.deb ... - Unpacking libpkgconf3:arm64 (1.8.1-4) ... - Selecting previously unselected package pkgconf-bin. - Preparing to unpack .../pkgconf-bin_1.8.1-4_arm64.deb ... - Unpacking pkgconf-bin (1.8.1-4) ... - Selecting previously unselected package pkgconf:arm64. - Preparing to unpack .../pkgconf_1.8.1-4_arm64.deb ... - Unpacking pkgconf:arm64 (1.8.1-4) ... - Selecting previously unselected package pkg-config:arm64. - Preparing to unpack .../pkg-config_1.8.1-4_arm64.deb ... - Unpacking pkg-config:arm64 (1.8.1-4) ... - Setting up libpkgconf3:arm64 (1.8.1-4) ... - Setting up pkgconf-bin (1.8.1-4) ... - Setting up pkgconf:arm64 (1.8.1-4) ... - Setting up pkg-config:arm64 (1.8.1-4) ... - Processing triggers for libc-bin (2.41-12) ... # To update the current shell environment, run: eval $(opam env) 2026-01-20 17:44.16 ---> saved as "cbe6003892fa6677dc03b880542f1255620895de0fcd144f218af61855f3f986" /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). [NOTE] Package ocaml-config is already installed (current version is 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml is already installed (current version is 5.4.0). [NOTE] Package base-unix is already installed (current version is base). [NOTE] Package base-threads is already installed (current version is base). [NOTE] Package base-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). The following actions will be performed: === install 52 packages - install alcotest 1.9.1 - install asetmap 0.8.1 - install astring 0.8.5 - install base v0.17.3 - install base-bytes base - install cmdliner 2.1.0 - install conf-pkg-config 4 - install cppo 1.8.0 - install csexp 1.5.2 - install cstruct 6.2.0 - install cstruct-lwt 6.2.0 - install cstruct-sexp 6.2.0 - install dune 3.21.0 - install dune-configurator 3.21.0 - install fmt 0.11.0 - install io-page 3.0.0 - install lambda-term 3.3.3 - install logs 0.10.0 - install lwt 6.0.0 - install lwt_react 1.2.0 - install mew 0.1.0 - install mew_vi 0.5.0 - install mirage-channel 5.0.0 - install mirage-flow 5.0.0 - install num 1.6 - install ocaml-compiler-libs v0.17.0 - install ocaml-syntax-shims 1.0.0 - install ocaml_intrinsics_kernel v0.17.1 - install ocamlbuild 0.16.1 - install ocamlfind 1.9.8 - install ocplib-endian 1.2 - install parsexp v0.17.0 - install ppx_derivers 1.2.1 - install ppx_sexp_conv v0.17.1 - install ppxlib 0.37.0 - install ppxlib_jane v0.17.4 - install prometheus 1.3 - install re 1.14.0 - install react 1.2.2 - install result 1.5 - install rresult 0.7.0 - install sexplib v0.17.0 - install sexplib0 v0.17.0 - install stdlib-shims 0.3.0 - install topkg 1.1.1 - install trie 1.0.0 - install uchar 0.0.2 - install uucp 17.0.0 - install uuseg 17.0.0 - install uutf 1.0.4 - install win-error 1.0 - install zed 3.2.3 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved alcotest.1.9.1 (cached) -> retrieved asetmap.0.8.1 (cached) -> retrieved astring.0.8.5 (cached) -> retrieved base.v0.17.3 (cached) -> retrieved cmdliner.2.1.0 (cached) -> retrieved cppo.1.8.0 (cached) -> installed conf-pkg-config.4 -> retrieved csexp.1.5.2 (cached) -> retrieved cstruct.6.2.0, cstruct-lwt.6.2.0, cstruct-sexp.6.2.0 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved io-page.3.0.0 (cached) -> retrieved lambda-term.3.3.3 (cached) -> retrieved logs.0.10.0 (cached) -> retrieved lwt.6.0.0 (cached) -> retrieved lwt_react.1.2.0 (cached) -> retrieved mew.0.1.0 (cached) -> retrieved mew_vi.0.5.0 (cached) -> retrieved mirage-channel.5.0.0 (cached) -> retrieved mirage-flow.5.0.0 (cached) -> retrieved num.1.6 (cached) -> retrieved ocaml-compiler-libs.v0.17.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocaml_intrinsics_kernel.v0.17.1 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved dune.3.21.0, dune-configurator.3.21.0 (cached) -> retrieved ocplib-endian.1.2 (cached) -> retrieved parsexp.v0.17.0 (cached) -> retrieved ppx_derivers.1.2.1 (cached) -> retrieved ppx_sexp_conv.v0.17.1 (cached) -> retrieved ppxlib_jane.v0.17.4 (cached) -> retrieved prometheus.1.3 (cached) -> retrieved re.1.14.0 (cached) -> retrieved react.1.2.2 (cached) -> retrieved result.1.5 (cached) -> retrieved rresult.0.7.0 (cached) -> retrieved ppxlib.0.37.0 (cached) -> retrieved sexplib.v0.17.0 (cached) -> retrieved sexplib0.v0.17.0 (cached) -> installed cmdliner.2.1.0 -> installed num.1.6 -> retrieved stdlib-shims.0.3.0 (cached) -> retrieved topkg.1.1.1 (cached) -> retrieved trie.1.0.0 (cached) -> retrieved uchar.0.0.2 (cached) -> retrieved uuseg.17.0.0 (cached) -> retrieved uutf.1.0.4 (cached) -> retrieved win-error.1.0 (cached) -> retrieved zed.3.2.3 (cached) -> retrieved uucp.17.0.0 (cached) -> installed ocamlfind.1.9.8 -> installed base-bytes.base -> installed ocamlbuild.0.16.1 -> installed uchar.0.0.2 -> installed topkg.1.1.1 -> installed asetmap.0.8.1 -> installed rresult.0.7.0 -> installed react.1.2.2 -> installed uutf.1.0.4 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed dune.3.21.0 -> installed csexp.1.5.2 -> installed cppo.1.8.0 -> installed cstruct.6.2.0 -> installed ocaml-compiler-libs.v0.17.0 -> installed ocaml-syntax-shims.1.0.0 -> installed ocaml_intrinsics_kernel.v0.17.1 -> installed ppx_derivers.1.2.1 -> installed re.1.14.0 -> installed result.1.5 -> installed sexplib0.v0.17.0 -> installed stdlib-shims.0.3.0 -> installed trie.1.0.0 -> installed win-error.1.0 -> installed ocplib-endian.1.2 -> installed io-page.3.0.0 -> installed mew.0.1.0 -> installed alcotest.1.9.1 -> installed mew_vi.0.5.0 -> installed parsexp.v0.17.0 -> installed dune-configurator.3.21.0 -> installed sexplib.v0.17.0 -> installed cstruct-sexp.6.2.0 -> installed lwt.6.0.0 -> installed cstruct-lwt.6.2.0 -> installed mirage-flow.5.0.0 -> installed prometheus.1.3 -> installed lwt_react.1.2.0 -> installed logs.0.10.0 -> installed mirage-channel.5.0.0 -> installed base.v0.17.3 -> installed uucp.17.0.0 -> installed ppxlib.0.37.0 -> installed uuseg.17.0.0 -> installed ppxlib_jane.v0.17.4 -> installed zed.3.2.3 -> installed ppx_sexp_conv.v0.17.1 -> installed lambda-term.3.3.3 Done. # To update the current shell environment, run: eval $(opam env) 2026-01-20 17:45.22 ---> saved as "f88d67152bb02e193aa073ee1753a5d8b96d36112e008af501ef4461e6d86f55" /src: (copy (src .) (dst /src)) 2026-01-20 17:45.23 ---> saved as "e127c8c3751ddb726689b780882497051ebcce6320d27166e9b17998cb4e843d" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) (cd _build/default/lib_test && ./lofs_test.exe -e -v) Testing `client server'. This run has ID `SJ1F8ALV'. [OK] client 0 connect1. [OK] client 1 connect2. [OK] client 2 check that create rebinds fids. [OK] client 3 check that we can remove a file. [OK] client 4 check that we can remove a directory. [OK] client 5 failed remove should clunk the fid. [OK] client 6 check reading out-of-bounds on a director... [OK] client 7 check rpc after disconnect fails. Test Successful in 0.068s. 8 tests run. chmod: cannot access 'tmp/*': No such file or directory DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client chmod: cannot access 'tmp/*': No such file or directory DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client2] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client2] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client2] Negotiated maximum message size: 8215 bytes DBG [client2] Maximum read payload would be: 8204 bytes DBG [client2] Maximum write payload would be: 8192 bytes DBG [client2] We will use a global maximum payload of: 8192 bytes DBG [client2] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client2] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client2] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client2] Successfully negotiated a connection. DBG [client2] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client2] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client chmod: cannot access 'tmp/*': No such file or directory DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Write)) (group ()) (other ()) (is_directory false) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io ReadWrite) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Write)) (group ()) (other ()) (is_directory false) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io ReadWrite) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] S ((tag (1)) (payload (Create ((qid ((flags ()) (version 0) (id 392821))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Create ((qid ((flags ()) (version 0) (id 392821))) (iounit 0))))) DBG [client1] C tag 1 Write(fid: 1, offset: 0, len(data): 16) DBG [server] C tag 1 Write(fid: 1, offset: 0, len(data): 16) DBG [server] S ((tag (1)) (payload (Write ((count 16))))) DBG [client1] S ((tag (1)) (payload (Write ((count 16))))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Write)) (group ()) (other ()) (is_directory false) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io ReadWrite) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Write)) (group ()) (other ()) (is_directory false) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io ReadWrite) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] S ((tag (1)) (payload (Create ((qid ((flags ()) (version 0) (id 392823))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Create ((qid ((flags ()) (version 0) (id 392823))) (iounit 0))))) DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 2) (wnames (foo)))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 2) (wnames (foo)))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids (((flags ()) (version 0) (id 392823)))))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids (((flags ()) (version 0) (id 392823)))))))) DBG [client1] C ((tag (1)) (payload (Remove ((fid 2))))) DBG [server] C ((tag (1)) (payload (Remove ((fid 2))))) DBG [server] S ((tag (1)) (payload (Remove ()))) DBG [client1] S ((tag (1)) (payload (Remove ()))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client chmod: cannot access 'tmp/*': No such file or directory DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Read Write)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Read Write)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392825))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392825))) (iounit 0))))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392825)))))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392825)))))))) DBG [client1] C ((tag (1)) (payload (Remove ((fid 1))))) DBG [server] C ((tag (1)) (payload (Remove ((fid 1))))) DBG [server] S ((tag (1)) (payload (Remove ()))) DBG [client1] S ((tag (1)) (payload (Remove ()))) DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client chmod: cannot access 'tmp/*': No such file or directory DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Read Write Execute)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Read Write Execute)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392827))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392827))) (iounit 0))))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392827)))))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392827)))))))) DBG [client1] C ((tag (1)) (payload (Create ((fid 1) (name bar) (perm ((owner (Read Write Execute)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] C ((tag (1)) (payload (Create ((fid 1) (name bar) (perm ((owner (Read Write Execute)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392828))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392828))) (iounit 0))))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392827)))))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392827)))))))) DBG [client1] C ((tag (1)) (payload (Remove ((fid 1))))) DBG [server] C ((tag (1)) (payload (Remove ((fid 1))))) ERR [server] Uncaught exception handling ((tag (1)) (payload (Remove ((fid 1))))): Exception: Unix.Unix_error(Unix.ENOTEMPTY, "rmdir", "/src/_build/default/lib_test/tmp/foo") Raised by primitive operation at Lwt_unix.self_result in file "src/unix/lwt_unix.cppo.ml", line 231, characters 14-31 DBG [server] S ((tag (1)) (payload (Err ((ename "Unix.Unix_error(Unix.ENOTEMPTY, \"rmdir\", \"/src/_build/default/lib_test/tmp/foo\")") (errno ()))))) DBG [client1] S ((tag (1)) (payload (Err ((ename "Unix.Unix_error(Unix.ENOTEMPTY, \"rmdir\", \"/src/_build/default/lib_test/tmp/foo\")") (errno ()))))) DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames ()))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids ()))))) DBG [client1] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Read Execute)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] C ((tag (1)) (payload (Create ((fid 1) (name foo) (perm ((owner (Read Execute)) (group ()) (other ()) (is_directory true) (append_only false) (exclusive false) (is_mount false) (is_auth false) (temporary false) (is_device false) (is_symlink false) (is_hardlink false) (is_namedpipe false) (is_socket false) (is_setuid false) (is_setgid false) (is_any false))) (mode ((io Read) (truncate false) (rclose false) (append false))) (extension ()))))) DBG [server] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392830))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Create ((qid ((flags (Directory)) (version 0) (id 392830))) (iounit 0))))) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] C ((tag (1)) (payload (Walk ((fid 0) (newfid 1) (wnames (foo)))))) DBG [server] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392830)))))))) DBG [client1] S ((tag (1)) (payload (Walk ((wqids (((flags (Directory)) (version 0) (id 392830)))))))) DBG [client1] C ((tag (1)) (payload (Open ((fid 1) (mode ((io Read) (truncate false) (rclose false) (append false))))))) DBG [server] C ((tag (1)) (payload (Open ((fid 1) (mode ((io Read) (truncate false) (rclose false) (append false))))))) DBG [server] S ((tag (1)) (payload (Open ((qid ((flags (Directory)) (version 0) (id 392830))) (iounit 0))))) DBG [client1] S ((tag (1)) (payload (Open ((qid ((flags (Directory)) (version 0) (id 392830))) (iounit 0))))) DBG [client1] C ((tag (1)) (payload (Read ((fid 1) (offset 1024) (count 16))))) DBG [server] C ((tag (1)) (payload (Read ((fid 1) (offset 1024) (count 16))))) DBG [server] S tag 1 Read(len(data): 0) DBG [client1] S tag 1 Read(len(data): 0) DBG [client1] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] C ((tag (1)) (payload (Clunk ((fid 1))))) DBG [server] S ((tag (1)) (payload (Clunk ()))) DBG [client1] S ((tag (1)) (payload (Clunk ()))) DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client DBG [client1] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] accepted connection DBG [server] C ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [server] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) INF [server] Using protocol TwoThousandU msize 8215 DBG [client1] S ((tag ()) (payload (Version ((msize 8215) (version TwoThousandU))))) DBG [client1] Negotiated maximum message size: 8215 bytes DBG [client1] Maximum read payload would be: 8204 bytes DBG [client1] Maximum write payload would be: 8192 bytes DBG [client1] We will use a global maximum payload of: 8192 bytes DBG [client1] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] C ((tag (1)) (payload (Attach ((fid 0) (afid -1) (uname nobody) (aname /) (n_uname ()))))) DBG [server] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [server] Successfully negotiated a connection. DBG [client1] S ((tag (1)) (payload (Attach ((qid ((flags (Directory)) (version 0) (id 392817))))))) DBG [client1] Successfully received a root qid: ((flags (Directory)) (version 0) (id 392817)) DBG [client1] Successfully negotiated a connection. DBG [client1] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] C ((tag (1)) (payload (Flush ((oldtag ()))))) DBG [server] S ((tag (1)) (payload (Flush ()))) DBG [client1] S ((tag (1)) (payload (Flush ()))) DBG [server] S error reading: Caught EOF on underlying FLOW DBG [server] Disconnecting client 2026-01-20 17:45.26 ---> saved as "23a93f91706fc7edbab238a683a0d55679a4692b98372c4e6eada4e58afb88fe" Job succeeded 2026-01-20 17:45.27: Job succeeded