Trond Myklebust
b4946ffb18
NFS: Fix a refcount leakage in O_DIRECT
...
The current code is leaking a reference to dreq->kref when the calls to
nfs_direct_read_schedule() and nfs_direct_write_schedule() return an
error.
This patch moves the call to kref_put() from nfs_direct_wait() back into
nfs_direct_read() and nfs_direct_write() (which are the functions that
actually took the reference in the first place) fixing the leak.
Thanks to Denis V. Lunev for spotting the bug and proposing the original
fix.
Acked-by: Denis V. Lunev <[email protected] >
Acked-by: Chuck Lever <[email protected] >
Signed-off-by: Trond Myklebust <[email protected] >
2007-05-30 16:26:01 -04:00
..
callback.c
callback.h
NFS: Fix more sparse warnings
2007-05-14 19:33:46 -04:00
callback_proc.c
callback_xdr.c
client.c
Detach sched.h from mm.h
2007-05-21 09:18:19 -07:00
delegation.c
NFS: Fix some 'sparse' warnings...
2007-05-14 19:33:46 -04:00
delegation.h
dir.c
Detach sched.h from mm.h
2007-05-21 09:18:19 -07:00
direct.c
NFS: Fix a refcount leakage in O_DIRECT
2007-05-30 16:26:01 -04:00
file.c
Detach sched.h from mm.h
2007-05-21 09:18:19 -07:00
getroot.c
NFS: Kill the obsolete NFS_PARANOIA
2007-05-09 17:58:01 -04:00
idmap.c
NFS: use __set_current_state()
2007-05-09 17:58:01 -04:00
inode.c
Detach sched.h from mm.h
2007-05-21 09:18:19 -07:00
internal.h
NFS: Fix a buffer overflow in the allocation of struct nfs_read/writedata
2007-04-30 22:17:07 -07:00
iostat.h
Makefile
mount_clnt.c
SUNRPC: RPC buffer size estimates are too large
2007-04-30 22:17:10 -07:00
namespace.c
[PATCH] mark struct inode_operations const 2
2007-02-12 09:48:46 -08:00
nfs2xdr.c
NFS: Kill the obsolete NFS_PARANOIA
2007-05-09 17:58:01 -04:00
nfs3acl.c
nfs3proc.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
nfs3xdr.c
SUNRPC: RPC buffer size estimates are too large
2007-04-30 22:17:10 -07:00
nfs4_fs.h
Merge branch 'master' of /home/trondmy/kernel/linux-2.6/
2007-02-12 22:43:25 -08:00
nfs4namespace.c
nfs4proc.c
NFS: Fix some 'sparse' warnings...
2007-05-14 19:33:46 -04:00
nfs4renewd.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
nfs4state.c
NFS: Fix some 'sparse' warnings...
2007-05-14 19:33:46 -04:00
nfs4xdr.c
NFS: Fix more sparse warnings
2007-05-14 19:33:46 -04:00
nfsroot.c
NFS: switch NFSROOT to use new rpcbind client
2007-04-30 22:17:14 -07:00
pagelist.c
NFS: Avoid a deadlock situation on write
2007-05-24 10:44:20 -04:00
proc.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
read.c
NFS: use zero_user_page
2007-05-14 19:33:45 -04:00
super.c
NFS: Added support to turn off the NFSv3 READDIRPLUS RPC.
2007-04-30 22:17:16 -07:00
symlink.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
sysctl.c
[PATCH] nfs: fix congestion control
2007-03-16 19:25:05 -07:00
unlink.c
write.c
NFS: Avoid a deadlock situation on write
2007-05-24 10:44:20 -04:00