linux/fs/nfs
NeilBrown 24e36663c3 [PATCH] knfsd: be more selective in which sockets lockd listens on
Currently lockd listens on UDP always, and TCP if CONFIG_NFSD_TCP is set.

However as lockd performs services of the client as well, this is a problem.
If CONFIG_NfSD_TCP is not set, and a tcp mount is used, the server will not be
able to call back to lockd.

So:
 - add an option to lockd_up saying which protocol is needed
 - Always open sockets for which an explicit port was given, otherwise
   only open a socket of the type required
 - Change nfsd to do one lockd_up per socket rather than one per thread.

This
 - removes the dependancy on CONFIG_NFSD_TCP
 - means that lockd may open sockets other than at startup
 - means that lockd will *not* listen on UDP if the only
   mounts are TCP mount (and nfsd hasn't started).

The latter is the only one that concerns me at all - I don't know if this
might be a problem with some servers.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-02 07:57:17 -07:00
..
callback_proc.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
callback_xdr.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
callback.c [PATCH] knfsd: add a callback for when last rpc thread finishes 2006-10-02 07:57:17 -07:00
callback.h NFS: Fix NFS4 callback up/down prototypes 2006-09-22 23:24:31 -04:00
client.c [PATCH] knfsd: be more selective in which sockets lockd listens on 2006-10-02 07:57:17 -07:00
delegation.c [PATCH] fs: Removing useless casts 2006-09-27 08:26:10 -07:00
delegation.h NFS: Rename struct nfs4_client to struct nfs_client 2006-09-22 23:24:31 -04:00
dir.c [PATCH] r/o bind mounts: monitor zeroing of i_nlink 2006-10-01 00:39:30 -07:00
direct.c [PATCH] Vectorize aio_read/aio_write fileop methods 2006-10-01 00:39:28 -07:00
file.c [PATCH] Vectorize aio_read/aio_write fileop methods 2006-10-01 00:39:28 -07:00
getroot.c NFS: Secure the roots of the NFS subtrees in a shared superblock 2006-09-22 23:24:38 -04:00
idmap.c SUNRPC: Make rpc_mkpipe() take the parent dentry as an argument 2006-09-22 23:24:54 -04:00
inode.c [PATCH] inode-diet: Eliminate i_blksize from the inode structure 2006-09-27 08:26:18 -07:00
internal.h NFS: Add server and volume lists to /proc 2006-09-22 23:24:37 -04:00
iostat.h NFSv4: Fix an oops in nfs4_fill_super 2006-03-20 13:44:48 -05:00
Makefile NFS: Share NFS superblocks per-protocol per-server per-FSID 2006-09-22 23:24:37 -04:00
mount_clnt.c NFS: NFS_ROOT should use the new rpc_create API 2006-09-22 23:24:55 -04:00
namespace.c [PATCH] fs/nfs/: make code static 2006-09-27 08:26:20 -07:00
nfs2xdr.c NFS: Use cached page as buffer for NFS symlink requests 2006-09-22 23:24:53 -04:00
nfs3acl.c NFSv3: Client-side nfsacl caching fix 2006-06-09 09:34:11 -04:00
nfs3proc.c [PATCH] fs: Removing useless casts 2006-09-27 08:26:10 -07:00
nfs3xdr.c NFS: Use cached page as buffer for NFS symlink requests 2006-09-22 23:24:53 -04:00
nfs4_fs.h NFS: Share NFS superblocks per-protocol per-server per-FSID 2006-09-22 23:24:37 -04:00
nfs4namespace.c NFS: Share NFS superblocks per-protocol per-server per-FSID 2006-09-22 23:24:37 -04:00
nfs4proc.c NFSv4: Poll more aggressively when handling NFS4ERR_DELAY 2006-09-22 23:25:04 -04:00
nfs4renewd.c NFSv4: Fix a use-after-free issue with the nfs server. 2006-09-22 23:24:54 -04:00
nfs4state.c NFS: Share NFS superblocks per-protocol per-server per-FSID 2006-09-22 23:24:37 -04:00
nfs4xdr.c NFS: Use cached page as buffer for NFS symlink requests 2006-09-22 23:24:53 -04:00
nfsroot.c [PATCH] nfsroot port= parameter fix [backport of 2.4 fix] 2006-02-07 21:00:42 -05:00
pagelist.c [PATCH] Really ignore kmem_cache_destroy return value 2006-09-27 08:26:10 -07:00
proc.c [PATCH] fs: Removing useless casts 2006-09-27 08:26:10 -07:00
read.c [PATCH] Really ignore kmem_cache_destroy return value 2006-09-27 08:26:10 -07:00
super.c [PATCH] Allow file systems to manually d_move() inside of ->rename() 2006-09-24 13:50:45 -07:00
symlink.c nfs: remove nfs_put_link() 2006-06-25 06:39:35 -04:00
sysctl.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
unlink.c NFS: kzalloc conversion in fs/nfs 2006-03-20 13:44:10 -05:00
write.c [PATCH] BLOCK: Remove no-longer necessary linux/mpage.h inclusions [try #6] 2006-09-30 20:52:30 +02:00