mirror of
https://github.com/opnsense/src.git
synced 2026-04-28 09:37:08 -04:00
that use it. Specifically, vop_stdlock uses the lock pointed to by vp->v_vnlock. By default, getnewvnode sets up vp->v_vnlock to reference vp->v_lock. Filesystems that wish to use the default do not need to allocate a lock at the front of their node structure (as some still did) or do a lockinit. They can simply start using vn_lock/VOP_UNLOCK. Filesystems that wish to manage their own locks, but still use the vop_stdlock functions (such as nullfs) can simply replace vp->v_vnlock with a pointer to the lock that they wish to have used for the vnode. Such filesystems are responsible for setting the vp->v_vnlock back to the default in their vop_reclaim routine (e.g., vp->v_vnlock = &vp->v_lock). In theory, this set of changes cleans up the existing filesystem lock interface and should have no function change to the existing locking scheme. Sponsored by: DARPA & NAI Labs. |
||
|---|---|---|
| .. | ||
| bootp_subr.c | ||
| krpc.h | ||
| krpc_subr.c | ||
| nfs.h | ||
| nfs_bio.c | ||
| nfs_diskless.c | ||
| nfs_lock.c | ||
| nfs_lock.h | ||
| nfs_nfsiod.c | ||
| nfs_node.c | ||
| nfs_socket.c | ||
| nfs_subs.c | ||
| nfs_vfsops.c | ||
| nfs_vnops.c | ||
| nfsargs.h | ||
| nfsdiskless.h | ||
| nfsm_subs.h | ||
| nfsmount.h | ||
| nfsnode.h | ||
| nfsstats.h | ||
| nlminfo.h | ||