Introduction
Subsystems (6)
PATCH 1/1 Introduction
Hi Marcelo,
I wonder if there is any chance of getting these two nfsd patches into 2.4.27. Both are very minor.
The first simply remote the EXPERIMENTAL flag for NFS over TCP. NFS service over TCP has been working
quite well for a while now and there is no need to keep it experimental.
The second changes the MAXBLKSIZE of nfs server to be a function of PAGE_SIZE. The currently value of 8K was chosen because it is
1/ big enough to be useful
2/ small enough to not cause kmalloc problems when a buffer that large is needed.
On machines with larger PAGE_SIZE, it is smaller than needed and a bigger number will be more useful.
Thanks,
NeilBrown
-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
PATCH 1/1 mark NFS/TCP not EXPERIMENTAL
NFS/TCP has been used widely for a long time now, and is now enabled by many distros and typically recommended for lossy or congested networks. This patch removes the EXPERIMENTAL tag, updates the help text, and changes arch defconfigs to set it by default (note that several already did so).
From: Greg Banks <[email protected]>
### Diffstat output
./Documentation/Configure.help | 7 ++++--- ./arch/i386/defconfig | 2 +- ./arch/ia64/defconfig | 2 +- ./arch/mips/defconfig | 2 +- ./arch/mips64/defconfig | 2 +- ./arch/ppc/defconfig | 2 +- ./arch/ppc64/defconfig | 2 +- ./arch/s390/defconfig | 2 +- ./arch/s390x/defconfig | 2 +- ./arch/sh64/defconfig | 2 +- ./fs/Config.in | 2 +- 11 files changed, 14 insertions(+), 13 deletions(-)
Documentation/Configure.help renamed from Documentation/Configure.help~current~ +4 -3
@@ -17209,10 +17209,11 @@ CONFIG_NFSD_V3 If you would like to include the NFSv3 server as well as the NFSv2 server, say Y here. If unsure, say Y. -Provide NFS over TCP server support EXPERIMENTAL +Provide NFS over TCP server support CONFIG_NFSD_TCP - Enable NFS service over TCP connections. This the officially - still experimental, but seems to work well. + If you want your NFS server to support TCP connections, say Y here. + TCP connections usually perform better than the default UDP when + the network is lossy or congested. If unsure, say Y. OS/2 HPFS file system support CONFIG_HPFS_FS
arch/i386/defconfig renamed from arch/i386/defconfig~current~ +1 -1
@@ -741,7 +741,7 @@ CONFIG_NFS_FS=y # CONFIG_ROOT_NFS is not set CONFIG_NFSD=y # CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y # CONFIG_SMB_FS is not set
arch/ia64/defconfig renamed from arch/ia64/defconfig~current~ +1 -1
@@ -755,7 +755,7 @@ CONFIG_NFS_V3=y # CONFIG_ROOT_NFS is not set CONFIG_NFSD=y CONFIG_NFSD_V3=y -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y
arch/mips/defconfig renamed from arch/mips/defconfig~current~ +1 -1
@@ -607,7 +607,7 @@ CONFIG_NFS_FS=y CONFIG_ROOT_NFS=y CONFIG_NFSD=y # CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y # CONFIG_SMB_FS is not set
arch/mips64/defconfig renamed from arch/mips64/defconfig~current~ +1 -1
@@ -563,7 +563,7 @@ CONFIG_NFS_V3=y CONFIG_ROOT_NFS=y # CONFIG_NFSD is not set # CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y
arch/ppc/defconfig renamed from arch/ppc/defconfig~current~ +1 -1
@@ -812,7 +812,7 @@ CONFIG_NFS_FS=y # CONFIG_ROOT_NFS is not set CONFIG_NFSD=y # CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y # CONFIG_SMB_FS is not set
arch/ppc64/defconfig renamed from arch/ppc64/defconfig~current~ +1 -1
@@ -668,7 +668,7 @@ CONFIG_NFS_V3=y # CONFIG_ROOT_NFS is not set CONFIG_NFSD=y CONFIG_NFSD_V3=y -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y
arch/s390/defconfig renamed from arch/s390/defconfig~current~ +1 -1
@@ -351,7 +351,7 @@ CONFIG_NFS_V3=y # CONFIG_ROOT_NFS is not set CONFIG_NFSD=y CONFIG_NFSD_V3=y -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y
arch/s390x/defconfig renamed from arch/s390x/defconfig~current~ +1 -1
@@ -291,7 +291,7 @@ CONFIG_NFS_V3=y # CONFIG_ROOT_NFS is not set CONFIG_NFSD=y CONFIG_NFSD_V3=y -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y
arch/sh64/defconfig renamed from arch/sh64/defconfig~current~ +1 -1
@@ -386,7 +386,7 @@ CONFIG_NFS_V3=y CONFIG_ROOT_NFS=y # CONFIG_NFSD is not set # CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_TCP=y CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y
fs/Config.in renamed from fs/Config.in~current~ +1 -1
@@ -121,7 +121,7 @@ if [ "$CONFIG_NET" = "y" ]; then dep_tristate 'NFS server support' CONFIG_NFSD $CONFIG_INET dep_mbool ' Provide NFSv3 server support' CONFIG_NFSD_V3 $CONFIG_NFSD - dep_mbool ' Provide NFS server over TCP support (EXPERIMENTAL)' CONFIG_NFSD_TCP $CONFIG_NFSD $CONFIG_EXPERIMENTAL + dep_mbool ' Provide NFS server over TCP support' CONFIG_NFSD_TCP $CONFIG_NFSD if [ "$CONFIG_NFS_FS" = "y" -o "$CONFIG_NFSD" = "y" ]; then define_tristate CONFIG_SUNRPC y
-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
PATCH 1/1 Allow larger NFSd MAXBLKSIZE on architectures with larger PAGE_SIZE
In reply to NeilBrownThis patch makes NFSSVC_MAXBLKSIZE depend on PAGE_SIZE so that machines with large page sizes can take advantage of that feature to serve NFS with larger blocksizes, increasing performance and avoiding a fallback to synchronous traffic between machines with page sizes greater than 8K. Also, documents the actual constraints on NFSSVC_MAXBLKSIZE.
From: Greg Banks <[email protected]>
### Diffstat output
./include/linux/nfsd/const.h | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-)
include/linux/nfsd/const.h renamed from include/linux/nfsd/const.h~current~ +10 -2
@@ -12,6 +12,7 @@#include <linux/nfs.h> #include <linux/nfs2.h> #include <linux/nfs3.h> +#include <asm/page.h> /* * Maximum protocol version supported by knfsd
@@ -19,9 +20,16 @@#define NFSSVC_MAXVERS 3/* -* Maximum blocksize supported by daemon currently at 8K +* Maximum blocksize supported by daemon. We want the largest +* value which 1) fits in a UDP datagram less some headers +* 2) is a multiple of page size 3) can be successfully kmalloc()ed +* by each nfsd. */ -#define NFSSVC_MAXBLKSIZE (8*1024) +#if PAGE_SIZE > (16 *1024 ) +#define NFSSVC_MAXBLKSIZE (32*1024) +#else +#define NFSSVC_MAXBLKSIZE (2*PAGE_SIZE) +#endif #ifdef __KERNEL__
-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs