]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC: r228217
authorrmacklem <rmacklem@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 7 Jan 2012 02:09:49 +0000 (02:09 +0000)
committerrmacklem <rmacklem@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 7 Jan 2012 02:09:49 +0000 (02:09 +0000)
commit399eb5e29be3ec24a0596caa800fb6a727e5e217
treee6e3712f3f8fea2c44f1cf1bb90b579b4837b59e
parent1e176be1bbf0da51834529df9b5f4b6da9fa2858
MFC: r228217
Post r223774, the NFSv4 client no longer has multiple instances
of the same lock_owner4 string. As such, the handling of cleanup
of lock_owners could be simplified. This simplification permitted
the client to do a ReleaseLockOwner operation when the process that
the lock_owner4 string represents, has exited. This permits the
server to release any storage related to the lock_owner4 string
before the associated open is closed. Without this change, it
is possible to exhaust a server's storage when a long running
process opens a file and then many child processes do locking
on the file, because the open doesn't get closed. A similar patch
was applied to the Linux NFSv4 client recently so that it wouldn't
exhaust a server's storage.

git-svn-id: svn://svn.freebsd.org/base/stable/8@229759 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/fs/nfs/nfsclstate.h
sys/fs/nfsclient/nfs_clstate.c