eebsd-current+subscribe@freebsd.org> List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 From: Rick Macklem Date: Mon, 20 Oct 2025 16:20:21 -0700 X-Gm-Features: AS18NWApvQIxOeRwtuqU2X65TJNhj6aozYJiwTf_AY2i7Rkd3cQdJYzytH_EkmY Message-ID: Subject: RFC: _PC_HAS_HIDDENSYSTEM rename To: FreeBSD CURRENT Content-Type: text/plain; charset="UTF-8" X-Spamd-Bar: --- X-Spamd-Result: default: False [-4.00 / 15.00]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; PREVIOUSLY_DELIVERED(0.00)[freebsd-current@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; TAGGED_FROM(0.00)[]; MID_RHS_MATCH_FROMTLD(0.00)[]; MISSING_XM_UA(0.00)[]; MLMMJ_DEST(0.00)[freebsd-current@freebsd.org]; RCVD_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::532:from] X-Rspamd-Queue-Id: 4crBHR5wbjz3mkZ Hi There are three flags UF_HIDDEN, UF_SYSTEM and UF_ARCHIVE defined in sys/stat.h (their origin is in MS-DOS). If a file system implements any of these flags, they implement all three of them, afaik. Commit afd5bc6309 (in main) defined _PC_HAS_HIDDENSYSTEM to allow pathconf to indicate if a file system supports the first two of these. I had ignored the third, since it is listed as "deprecated" in RFC-8881. It now turns out that the Windows NFSv4.1 client folk want support for UF_ARCHIVE and consider that it should not be deprecated. I do not think adding a separate _PC_HAS_ARCHIVE pathconf name is useful, since it is supported when _PC_HAS_HIDDENSYSTEM is returned non-zero. However, the name _PC_HAS_HIDDENSYSTEM is misleading, so what do others think I should do? - Add an alias for _PC_HAS_HIDDENSYSTEM called something like _PC_HAS_HIDSYSARCH or _PC_HAS_HIDDENSYSTEMARCHIVE? (Since _PC_HAS_HIDDENSYSTEM is now in the OpenZFS code, it needs to remain in unistd.h, at least for now.) Or - Just leave the name as is and document it correctly in pathconf(2)? Thanks for any comments, rick