freebsd-dev/sys/fs
Jason A. Harmening 0745d837c2 unionfs: prevent upperrootvp from being recycled during mount
If upperrootvp is doomed by a concurrent unmount, unionfs_nodeget()
may return without a reference or lock on it.  unionfs_domount() must
prevent the vnode from being recycled for use by a different file until
it is finished with the vnode, namely once vfs_register_upper_from_vp()
fails.  Accomplish this by holding the reference returned by namei()
a bit longer.

Reviewed by:	kib, markj
Tested by:	pho
Differential Revision:	https://reviews.freebsd.org/D39767
2023-05-07 18:30:43 -05:00
..
autofs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
cd9660 fs/cd9660: add header include guards 2023-03-30 19:20:54 -04:00
cuse cuse(3): Cosmetic change about testing boolean values. 2022-10-04 13:51:06 +02:00
deadfs deadfs: consistently return EOPNOTSUPP for fplookup vops 2023-04-06 15:20:41 +00:00
devfs sys/fs: do not report blocks allocated for synthetic file systems 2023-04-25 09:59:15 +02:00
ext2fs ext2fs: extract crc16 into sys/crc16.h 2023-04-24 12:41:52 +03:00
fdescfs sys/fs: do not report blocks allocated for synthetic file systems 2023-04-25 09:59:15 +02:00
fifofs fifofs: ansify 2023-02-07 23:18:51 +00:00
fuse fuse: Remove set but unused cr_gid variable. 2023-03-31 10:57:13 -07:00
mntfs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
msdosfs fs/msdosfs: Fix potential panic and size calculations 2023-04-25 09:58:29 +02:00
nfs nfscl: Fix support for doing Null RPCs 2023-04-07 12:57:26 -07:00
nfsclient nfscl: Make coverity happy 2023-03-28 17:08:45 -07:00
nfsserver nfsd: Fix NFSv3 Readdir/ReaddirPlus reply for large i-node numbers 2023-05-05 15:43:55 -07:00
nullfs nullfs: ansify 2023-02-07 23:22:27 +00:00
procfs procfs: Sync a documentation comment with the code. 2023-04-10 17:58:46 +00:00
pseudofs sys/fs: do not report blocks allocated for synthetic file systems 2023-04-25 09:59:15 +02:00
smbfs smbfs: ansify 2023-02-07 23:35:11 +00:00
tarfs tarfs: Use the existing CTLFLAG_RWTUN flag definition 2023-04-12 12:20:38 +08:00
tmpfs tmpfs: add missing vop_fplookup ops to tmpfs_fifoop_entries 2023-04-18 18:06:30 +00:00
udf udf: Remove set but unused variable from udf_getattr. 2023-04-10 10:31:45 -07:00
unionfs unionfs: prevent upperrootvp from being recycled during mount 2023-05-07 18:30:43 -05:00