From 22fb8b6147f7fb72407af80c36d5e99e4664fea2 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Tue, 29 Sep 2026 07:27:13 -0300 Subject: Mount dials its peer at once and fails if none answers; a peer out of reach is said as `dial failed: ` Mount took any well-formed dial and nothing was found out until the first look through it, which then said `look: look: dial`. Mount now probes the peer (version, attach, its root) with the turn out, and fails its write, mounting nothing, when none answers; the dial errors read as words, `no answer`, `timed out`, `hung up`, and a look through a peer gone since names its path: `look: /n/peer/f: dial failed: no answer`. Co-Authored-By: Claude Opus 5.5 --- docs/fs.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'docs/fs.md') diff --git a/docs/fs.md b/docs/fs.md index 2f97661e..92f2876a 100644 --- a/docs/fs.md +++ b/docs/fs.md @@ -32,7 +32,10 @@ and `/virtual/X` both name the served `/X`. `--mount=peer=work` mounts the named session `work`; the dial can also be an absolute socket path, `unix!/path`, `tcp!IP!port`, or `quic!IP!port`. At runtime, use `Mount peer dial` and -`Unmount peer`. There are eight named mounts; `os` and `self` are reserved. +`Unmount peer`. Mount dials the peer when it mounts it and fails its write +if nothing answers, `Mount peer /tmp/s: dial failed: no answer` (or `timed +out`, `hung up`), mounting nothing; a peer that goes away later is found out +by the next use, as `look: /n/peer/f: dial failed: no answer`. There are eight named mounts; `os` and `self` are reserved. Unmount refuses mounts still used by a pane, its working directory, or a pending Save. Mounts are saved in dumps. Save uses the file's original mount. @@ -257,7 +260,7 @@ and `not a session control message "X": write it to pane//ctl` or `not a window control message "X": write it to /ctl` for a word of the other ctl. 9ns maps them all to EINVAL, and a write refused here has done nothing. A line that then fails as it runs fails the write with the error the editor reports for it and the line, e.g. `Mount: -AlreadyMounted "Mount peer /tmp/s"` (EIO), and `control message needs its +already mounted "Mount peer /tmp/s"` (EIO), and `control message needs its argument "Save"` (EINVAL), for a builtin that would have asked at a prompt (a `Save` on a scratch) rather than open one nobody is there to answer. The lines before a failing one have taken effect and those after it never run, -- cgit v1.3