linux/fs/nfsd
David Woodhouse 14f7dd6320 [PATCH] Copy XFS readdir hack into nfsd code.
Some file systems with their own internal locking have problems with the
way that nfsd calls the ->lookup() method from within a filldir function
called from their ->readdir() method. The recursion back into the file
system code can cause deadlock.

XFS has a fairly hackish solution to this which involves doing the
readdir() into a locally-allocated buffer, then going back through it
calling the filldir function afterwards. It's not ideal, but it works.

It's particularly suboptimal because XFS does this for local file
systems too, where it's completely unnecessary.

Copy this hack into the NFS code where it can be used only for NFS
export. In response to feedback, use it unconditionally rather than only
for the affected file systems.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2008-10-23 05:13:05 -04:00
..
auth.c
auth.h
export.c [PATCH] switch nfsd to kern_path() 2008-10-23 05:12:51 -04:00
lockd.c nfsd: common grace period control 2008-10-03 16:19:02 -04:00
Makefile
nfs2acl.c
nfs3acl.c
nfs3proc.c nfsd: permit unauthenticated stat of export root 2008-09-29 17:56:56 -04:00
nfs3xdr.c
nfs4acl.c nfsd: fix buffer overrun decoding NFSv4 acl 2008-09-01 14:24:24 -04:00
nfs4callback.c nfsd: use nfs client rpc callback program 2008-09-29 18:13:40 -04:00
nfs4idmap.c
nfs4proc.c nfsd: common grace period control 2008-10-03 16:19:02 -04:00
nfs4recover.c [PATCH] switch nfsd to kern_path() 2008-10-23 05:12:51 -04:00
nfs4state.c [PATCH] switch nfsd to kern_path() 2008-10-23 05:12:51 -04:00
nfs4xdr.c nfsd: nfs4xdr decode_stateid helper function 2008-09-29 17:56:59 -04:00
nfscache.c
nfsctl.c [PATCH] switch nfsd to kern_path() 2008-10-23 05:12:51 -04:00
nfsfh.c nfsd: permit unauthenticated stat of export root 2008-09-29 17:56:56 -04:00
nfsproc.c nfsd: permit unauthenticated stat of export root 2008-09-29 17:56:56 -04:00
nfssvc.c NLM: Remove "proto" argument from lockd_up() 2008-10-04 17:12:27 -04:00
nfsxdr.c
stats.c
vfs.c [PATCH] Copy XFS readdir hack into nfsd code. 2008-10-23 05:13:05 -04:00