]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Introduce some functions in the vnode locks namespace and in the ffs
authorattilio <attilio@FreeBSD.org>
Sun, 24 Feb 2008 16:38:58 +0000 (16:38 +0000)
committerattilio <attilio@FreeBSD.org>
Sun, 24 Feb 2008 16:38:58 +0000 (16:38 +0000)
commit0d54671a48443b15ac601a80e192bc4c8faed7f9
tree997840c8acf28b15394b97f1d05d64f78bf81fd6
parent1c8346475e6e9a892928e5197425bb703eba2930
Introduce some functions in the vnode locks namespace and in the ffs
namespace in order to handle lockmgr fields in a controlled way instead
than spreading all around bogus stubs:
- VN_LOCK_AREC() allows lock recursion for a specified vnode
- VN_LOCK_ASHARE() allows lock sharing for a specified vnode

In FFS land:
- BUF_AREC() allows lock recursion for a specified buffer lock
- BUF_NOREC() disallows recursion for a specified buffer lock

Side note: union_subr.c::unionfs_node_update() is the only other function
directly handling lockmgr fields. As this is not simple to fix, it has
been left behind as "sole" exception.
12 files changed:
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
sys/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
sys/fs/nwfs/nwfs_node.c
sys/fs/pseudofs/pseudofs_vncache.c
sys/fs/smbfs/smbfs_node.c
sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c
sys/kern/vfs_lookup.c
sys/netncp/ncp_conn.c
sys/nfsclient/nfs_node.c
sys/sys/vnode.h
sys/ufs/ffs/ffs_softdep.c
sys/ufs/ffs/ffs_vfsops.c