Major issues with nfsv4
Rick Macklem
rmacklem at uoguelph.ca
Sat Dec 12 17:33:18 UTC 2020
Konstantin Belousov wrote:
[stuff snipped]
>Nullfs vnodes keep a reference on the lower vnode. When nullfs vnode
>caching is enabled, nullfs vnodes survive after a vfs syscall is finished.
>
>NFSv4 mount automatically sets flag MNTK_NULL_NOCACHE that disables nullfs
>vnode cache.
Thanks Kostik, I see that. (And I recall discussions about disabling the nullfs caching.)
Now, if I understand it correctly, if vrele() is called with the vnode shared locked,
then VOP_INACTIVE() won't be called.
--> It is VOP_INACTIVE()/VOP_RECLAIM() in the NFSv4 client that does the closes.
Normally the NFS client calls vput() when the vnode is locked, but is there a case
where nullfs might cause vrele() to be called on the lower vp when it is shared
locked? (Delaying closes until VOP_RECLAIM() would cause problems, I think?)
Note that, until we see the "nfsstat -c -E" we won't know if lots of opens
are an issue anyhow.
Thanks for the help, rick
More information about the freebsd-fs
mailing list