cvs commit: src/sys/kern vfs_lookup.c src/sys/nfs4client
nfs4_vfsops.c nfs4_vnops.c src/sys/nfsclient nfs_node.c nfs_subs.c
nfs_vfsops.c nfs_vnops.c nfsnode.h src/sys/sys mount.h
Mohan Srinivasan
mohans at FreeBSD.org
Sun Feb 11 03:07:47 UTC 2007
mohans 2007-02-11 03:07:46 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_6)
sys/kern vfs_lookup.c
sys/nfs4client nfs4_vfsops.c nfs4_vnops.c
sys/nfsclient nfs_node.c nfs_subs.c nfs_vfsops.c
nfs_vnops.c nfsnode.h
sys/sys mount.h
Log:
MFC:
Fixes up the handling of shared vnode lock lookups in the NFS client,
adds a FS type specific flag indicating that the FS supports shared
vnode lock lookups, adds some logic in vfs_lookup.c to test this flag
and set lock flags appropriately.
This change fixes the general problem of cascading vnode locks when an
NFS server goes down.
Ideally, we wouldn't need these changes, as enabling shared vnode lock
lookups globally would work. Unfortunately, UFS, for example isn't
ready for shared vnode lock lookups, crashing pretty quickly.
This change is the result of discussions with Stephan Uphoff (ups@).
Thanks to Kris for shaking out several bugs in NFS with shared vnode
lock lookups in current. MFC'ed per Kris' request.
Reviewed by: ups@
Revision Changes Path
1.80.2.11 +23 -6 src/sys/kern/vfs_lookup.c
1.20.2.5 +2 -2 src/sys/nfs4client/nfs4_vfsops.c
1.31.2.3 +6 -6 src/sys/nfs4client/nfs4_vnops.c
1.76.2.5 +3 -3 src/sys/nfsclient/nfs_node.c
1.140.2.2 +1 -1 src/sys/nfsclient/nfs_subs.c
1.177.2.5 +10 -3 src/sys/nfsclient/nfs_vfsops.c
1.258.2.11 +5 -5 src/sys/nfsclient/nfs_vnops.c
1.55.2.1 +1 -1 src/sys/nfsclient/nfsnode.h
1.197.2.9 +1 -0 src/sys/sys/mount.h
More information about the cvs-src
mailing list