mounts: list says an armed automount waits, not mounted, as the look already judges it (issue 437)
mesh/merge-gate pass: builds mounts → shanks; no bus step; every machine composes with the change as it did without (4 of 4 compose)
mesh/repo-check pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (go), merge-check-typescript.sh (typescript)
mesh/delivery delivered

The autofs line an armed automount leaves in mountinfo made List say
"mounted" while nothing was mounted. One judgement, Mounted.IsAutomount,
now serves List, the look and the checks before a mount.
This commit is contained in:
2026-10-11 02:17:47 +02:00
parent 372b6c2323
commit 520763e98d
4 changed files with 41 additions and 4 deletions
+2 -2
View File
@@ -158,7 +158,7 @@ func kindOf(what, fstype string) string {
// there, or nothing when it is, or nothing is mounted there but an automount.
func (m *Machine) notOwnSource(kind, what, point string, mounted map[string]Mounted) error {
mt, there := mounted[point]
if !there || mt.Type == "autofs" {
if !there || mt.IsAutomount() {
return nil
}
if kind != "" && m.sourceIs(kind, what, mt) {
@@ -172,7 +172,7 @@ func (m *Machine) notOwnSource(kind, what, point string, mounted map[string]Moun
func (m *Machine) mountpointFree(p Pair, own map[string]bool, mounted map[string]Mounted) error {
ours := own[p.MountUnit] && own[p.AutoUnit]
if mt, there := mounted[p.Mountpoint]; there {
if mt.Type == "autofs" {
if mt.IsAutomount() {
if ours {
return nil
}