1
linux/fs/nfsd
J. Bruce Fields f197c27196 nfsd4: fix file leak on open_downgrade
Stateid's hold a read reference for a read open, a write reference for a
write open, and an additional one of each for each read+write open.  The
latter wasn't getting put on a downgrade, so something like:

	open RW
	open R
	downgrade to R

was resulting in a file leak.

Also fix an imbalance in an error path.

Regression from 7d94784293 "nfsd4: fix
downgrade/lock logic".

Cc: stable@kernel.org
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2011-07-15 18:58:49 -04:00
..
acl.h
auth.c
auth.h
cache.h
export.c nfsd: Remove deprecated nfsctl system call and related code. 2011-07-15 18:58:42 -04:00
idmap.h
Kconfig nfsd: Remove deprecated nfsctl system call and related code. 2011-07-15 18:58:42 -04:00
lockd.c nfsd: Remove deprecated nfsctl system call and related code. 2011-07-15 18:58:42 -04:00
Makefile
nfs2acl.c
nfs3acl.c
nfs3proc.c nfsd41: make sure nfs server process OPEN with EXCLUSIVE4_1 correctly 2011-04-29 20:47:52 -04:00
nfs3xdr.c Merge branch 'for-2.6.40' of git://linux-nfs.org/~bfields/linux 2011-05-29 11:21:12 -07:00
nfs4acl.c
nfs4callback.c NFSD: fix decode_cb_sequence4resok 2011-02-22 15:55:09 -08:00
nfs4idmap.c nfsd: kill unused macro definition 2011-03-07 12:05:09 -05:00
nfs4proc.c NFSD: Added TEST_STATEID operation 2011-07-15 18:58:48 -04:00
nfs4recover.c
nfs4state.c nfsd4: fix file leak on open_downgrade 2011-07-15 18:58:49 -04:00
nfs4xdr.c NFSD: Added TEST_STATEID operation 2011-07-15 18:58:48 -04:00
nfscache.c
nfsctl.c nfsd: Remove deprecated nfsctl system call and related code. 2011-07-15 18:58:42 -04:00
nfsd.h
nfsfh.c nfsd4: allow fh_verify caller to skip pseudoflavor checks 2011-04-11 08:42:20 -04:00
nfsfh.h
nfsproc.c
nfssvc.c nfsd: Remove deprecated nfsctl system call and related code. 2011-07-15 18:58:42 -04:00
nfsxdr.c Fix common misspellings 2011-03-31 11:26:23 -03:00
state.h NFSD: Added TEST_STATEID operation 2011-07-15 18:58:48 -04:00
stats.c treewide: fix a few typos in comments 2011-05-10 10:16:21 +02:00
vfs.c nfsd4: fix break_lease flags on nfsd open 2011-06-20 10:38:01 -04:00
vfs.h nfsd41: make sure nfs server process OPEN with EXCLUSIVE4_1 correctly 2011-04-29 20:47:52 -04:00
xdr3.h
xdr4.h NFSD: Added TEST_STATEID operation 2011-07-15 18:58:48 -04:00
xdr.h