From nobody Thu Jul 03 14:24:07 2025 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4bXzY710Nrz616bp for ; Thu, 03 Jul 2025 14:24:27 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com [IPv6:2a00:1450:4864:20::633]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bXzY663bGz3CRM; Thu, 03 Jul 2025 14:24:26 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x633.google.com with SMTP id a640c23a62f3a-ad56cbc7b07so986264566b.0; Thu, 03 Jul 2025 07:24:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751552659; x=1752157459; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=tkCB9ImLz2VozdoVgdQsH9vnwSCRgbc7HNCaFMmUXME=; b=aQp3PoOIaVGkJyype0yj828mQFHTKMRtRyMPZ2mrjE0M15tmnJU94k2cShrkFVmYUs 6vM+fwQQUqx5LNgfVwo5JJ4uIO6VMxZgO7L5likbIdknRSV6SvL2H4Su1vYVK/BTzTQM K0xA/CeMVgjH9a6NiokHhBxltheDg+6AiFJFi8QmhKwwK74VHlW7Ot7JUrcCvb/YTGjr QSFH2gDVnoWhgP3MDY4JoxOHHN0HQwgP//i07+iECas7GpfYYy4bJfnwrdFvZRszLYYx hZcwTslS/c4LtdwDEsFTqqtgVf11z0BNwi9i+J0dZuOEo+S1JXFoEkarOGfLfa5TS15K 6cRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751552659; x=1752157459; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tkCB9ImLz2VozdoVgdQsH9vnwSCRgbc7HNCaFMmUXME=; b=UQcLdQxjlnVu3X0EYnp7oSV1n5B953QcP9eSbVscNy8k3n0STN8e/P5pUkkZpCgK9Z mOBYJG4uv9hfGv4IhAp4fs2Zh5XZbs8T/2PAByzol/RBzZuTPrGChS8mMy3NsoxTi0SJ yywpCVLbNk3NpqV7u7rfhWkxcNTm4AYfazpKj8B+z1jlRX6+p5rpJZ35FwQboQ2v6L0h vS6KdRZrSuglzJAk2vLTCN9SmBZtCzlPdWIDMpW0Y8NO4IERCEl1XrZZBD/BaAAPo44k Vncp6b0nUlxMo/eqRXSaMlKI86T3kVI9Prg+w/Sa127BMOSyT1R6hkyThf9n2zljttmL IgdA== X-Forwarded-Encrypted: i=1; AJvYcCXBqEjmCmbBa7hmI4xhFQWdRBugRIjCoThbuZCY2qwkE0jY5i0dM/DRax5fQNkzVL6xQp0MiKmtSu4u3TndC3k=@freebsd.org X-Gm-Message-State: AOJu0YxWS4J1B3/Vx5BaYk25hDShYLOy/nma/Vold+ts3XY/U7jULdVt ejHbvbRPEvRHh4nPqY9oCabHFCTMYNsSsUCaWD1TshZEgVdixHcXvRdQWbStmrHKyCbgcq+1GIE skTDFlmaf64xX9xQIGWOcMvzKNyqDRAA1 X-Gm-Gg: ASbGncvs4E54JhuSp2uWoQ7jh+BtjkwGin0fkLlIyVkKnyw4Y9srphzfGol+kp6ATcr GXhe4hcnLFV5ovQgEKua15qjOy7Mb9AyjRKb1YbNKA6XiWN2ge3RHI/ZTIDclUp9zIen7l7t45H wXInlAsj4VCrqRW9q+knE6giNUe5SGSOtiUkBrn7YA2lkJg8FEcZcpbeYAnABRAd0Zpsfvmf7XW Gs= X-Google-Smtp-Source: AGHT+IEjBEMf4Sq2b8Z15NhHQ9xZIqpgMNojpP1R6oBQdzeLiDYLmBr7S/rUNXkrW29vc8cX1gB6+GQOJkGDVWOA4Aw= X-Received: by 2002:a17:907:3f8f:b0:ae3:cc60:8cf0 with SMTP id a640c23a62f3a-ae3cc6093cemr489465266b.34.1751552659005; Thu, 03 Jul 2025 07:24:19 -0700 (PDT) List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 References: <4214798.O2WMGSuNBG@ravel> <2410567.gG0HsuGxDd@ravel> In-Reply-To: <2410567.gG0HsuGxDd@ravel> From: Rick Macklem Date: Thu, 3 Jul 2025 07:24:07 -0700 X-Gm-Features: Ac12FXwoqZWjD7xk9vwjNEs3HlpOg3IsGN4EY69eKqzxqVSSY3tWOj4ed7tg8Ko Message-ID: Subject: Re: RFC: checking file systems support UF_HIDDEN, UF_SYSTEM To: Olivier Certner Cc: Konstantin Belousov , freebsd-current@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 4bXzY663bGz3CRM X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] On Thu, Jul 3, 2025 at 4:01=E2=80=AFAM Olivier Certner w= rote: > > > It is not the right usage of the MNT_ flags. They are for feature > > controlling, not for the feature reporting. > > That is not the case today (MNT_LOCAL, MNT_QUOTA, MNT_ROOTFS, MNT_USER, e= tc.). I also would like this to become true at some point. > > > VOP_PATHCONF() is exactly for reporting some mnt features. > > No, it is to report features that depend on a path. It can be (ab)used t= o report mount features (calling it on any file inside the mount), but that= obfuscates the fact that an information is per-mount, whereas statfs()/sta= tvfs() are exactly designed for per-mount information. Note that, for a NFSv4 client mount, support for hidden/system could change somewhere in the mounted server tree, since for NFSv4 the tree can consist of multiple f= ile systems of different types. For example: If an ext2 fs was mounted under a ufs file system, the hidden/system suppor= t would go away when the mount point is crossed into the ext2 subtree. So, I think pathconf is the best way to go (and avoids using up flag bits). rick > > > Also, this namespace should not be used frivolously, we already had to > > extend flags to 64bit, and again we are not too far from exhausting it. > > I don't disagree. That said, at some point, we'll have to dodge the bull= et, including separating control flags from report ones in the MNT_* namesp= ace (and provide compat' functionality), and probably extending control fla= gs with a second 64-bit field. > > I suspected from the start that that was the main reason behind you recom= mending VOP_PATHCONF(). My point here is that it is a slightly non-optimal= design choice (as explained just above) that will stay and was made out of= a practical issue that anyway will have to be solved at some point, and I = find this a bit unfortunate. Solving the issue now is certainly much more = work, and in any case I didn't mean to object to not doing it now. But if = someone(tm) wants to do it now, that would be great (perhaps me, but not su= re yet). > > Regards. > > -- > Olivier Certner