Commit 8a81f16d authored by Chuck Lever's avatar Chuck Lever
Browse files

NFSD: Add a "default" block size



We'd like to increase the maximum r/wsize that NFSD can support,
but without introducing possible regressions. So let's add a
default setting of 1MB. A subsequent patch will raise the
maximum value but leave the default alone.

No behavior change is expected.

Reviewed-by: default avatarNeilBrown <neil@brown.name>
Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
parent cdc29154
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -44,9 +44,14 @@ bool nfsd_support_version(int vers);
#include "stats.h"

/*
 * Maximum blocksizes supported by daemon under various circumstances.
 * Default and maximum payload size (NFS READ or WRITE), in bytes.
 * The default is historical, and the maximum is an implementation
 * limit.
 */
#define NFSSVC_MAXBLKSIZE       RPCSVC_MAXPAYLOAD
enum {
	NFSSVC_DEFBLKSIZE       = 1 * 1024 * 1024,
	NFSSVC_MAXBLKSIZE       = RPCSVC_MAXPAYLOAD,
};

struct readdir_cd {
	__be32			err;	/* 0, nfserr, or nfserr_eof */
+1 −1
Original line number Diff line number Diff line
@@ -582,7 +582,7 @@ static int nfsd_get_default_max_blksize(void)
	 */
	target >>= 12;

	ret = NFSSVC_MAXBLKSIZE;
	ret = NFSSVC_DEFBLKSIZE;
	while (ret > target && ret >= 8*1024*2)
		ret /= 2;
	return ret;