[Bug 294768] fdescfs: `fdesc_getattr` mutates `vp->v_type` to `VLNK` on first `stat()`, breaking subsequent `open()` of pipe-fd entries on `linrdlnk` mounts
| Newsgroups | gmane.os.freebsd.devel.file-systems |
|---|---|
| Message-ID | <[email protected]/bugzilla/> |
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294768 --- Comment #2 from [email protected] --- A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=fbecfc4aa028964f972a0457809aa041d415f61b commit fbecfc4aa028964f972a0457809aa041d415f61b Author: Konstantin Belousov <[email protected]> AuthorDate: 2026-05-03 19:09:15 +0000 Commit: Konstantin Belousov <[email protected]> CommitDate: 2026-05-03 19:58:36 +0000 fdescfs: do not change vnode type on VOP_GETATTR() There is no point to do it. The VNON type is good enough for fdescfs operations, and changing the type on stat(2) is arbitrary and does not serve much purpose, because we recalculate the returned file type on each stat(2) anyway. But setting the type to VLNK has undesired consequence of namei() trying VOP_READLINK() there, which might fail since it defer the calculation of path to vn_fullpath(). Submitted by: Mike <[email protected]> PR: 294768 MFC after: 2 weeks sys/fs/fdescfs/fdesc_vnops.c | 1 - 1 file changed, 1 deletion(-) -- You are receiving this mail because: You are the assignee for the bug.