Date: Sat, 8 Nov 2003 13:05:13 -0800 From: Alfred Perlstein <bright@mu.org> To: fs@freebsd.org Subject: RFC: removing shared vnode locks in nfs. Message-ID: <20031108210513.GM34063@elvis.mu.org>
next in thread | raw e-mail | index | archive | help
I am requesting a second pair of eyes to make sure I can get rid of shared locks under nfs client. The reason we have shared vnode locks in FreeBSD for NFS is because otherwise if a NFS server goes away we race to the root and halt the whole machine. However, since rev 1.39 of vfs_lookup.c we avoid this by using an interlock with vfs_busy() when crossing into a new mountpoint. Since vfs_busy itself is a shared lock we can have multiple procs stuck on that file system but they will have dropped the parent directory lock, so we may wind up with a bunch of blocked processes, but not a race to root. FYI, Apple has been using exclusive locks on NFS for over two years without problems because they have the equivelant of 1.39 in their vfs_lookup.c. -- - Alfred Perlstein - Research Engineering Development Inc. - email: bright@mu.org cell: 408-480-4684
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031108210513.GM34063>