--- old/usr/src/cmd/fs.d/nfs/lockd/lockd.c	Wed Dec  7 11:40:32 2016
+++ new/usr/src/cmd/fs.d/nfs/lockd/lockd.c	Wed Dec  7 11:40:32 2016
@@ -93,7 +93,7 @@
 	.grace = 90,
 	.retransmittimeout = 5
 };
-int max_servers = 20;
+int max_servers = 256;
 
 
 #define	RET_OK		0	/* return code for no error */
--- old/usr/src/cmd/fs.d/nfs/nfsd/nfsd.c	Wed Dec  7 11:40:32 2016
+++ new/usr/src/cmd/fs.d/nfs/nfsd/nfsd.c	Wed Dec  7 11:40:32 2016
@@ -138,7 +138,7 @@
 	int allflag = 0;
 	int df_allflag = 0;
 	int opt_cnt = 0;
-	int maxservers = 1;	/* zero allows inifinte number of threads */
+	int maxservers = 1024;	/* zero allows inifinte number of threads */
 	int maxservers_set = 0;
 	int logmaxservers = 0;
 	int pid;
@@ -231,7 +231,7 @@
 		errno = 0;
 		maxservers = strtol(value, (char **)NULL, 10);
 		if (errno != 0)
-			maxservers = 1;
+			maxservers = 1024;
 		else
 			maxservers_set = 1;
 	}
--- old/usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml	Wed Dec  7 11:40:32 2016
+++ new/usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml	Wed Dec  7 11:40:32 2016
@@ -38,7 +38,7 @@
 <service
 	name='network/nfs/nlockmgr'
 	type='service'
-	version='1'>
+	version='2'>
 
 	<dependency name='network'
 	    grouping='require_any'
@@ -96,7 +96,7 @@
 	    <propval name='grace_period' type='integer' value='90'/>
 	    <propval name='lockd_listen_backlog' type='integer' value='32'/>
 	    <propval name='lockd_retransmit_timeout' type='integer' value='5'/>
-	    <propval name='lockd_servers' type='integer' value='20'/>
+	    <propval name='lockd_servers' type='integer' value='256'/>
 	  </property_group>
 	</instance>
 	<stability value='Stable' />
--- old/usr/src/cmd/fs.d/nfs/svc/server.xml	Wed Dec  7 11:40:32 2016
+++ new/usr/src/cmd/fs.d/nfs/svc/server.xml	Wed Dec  7 11:40:32 2016
@@ -22,6 +22,7 @@
  CDDL HEADER END
 
 	Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
+	Copyright (c) 2012 by Delphix. All rights reserved.
 	Copyright 2014 Nexenta Systems, Inc.  All rights reserved
 	Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
 
@@ -40,7 +41,7 @@
 <service
 	name='network/nfs/server'
 	type='service'
-	version='1'>
+	version='2'>
 
 	<dependency name='network'
 	    grouping='require_any'
@@ -174,7 +175,7 @@
 	   <propval name='server_delegation' type='astring' value='on'/>
 	   <propval name='server_versmax' type='integer' value='4'/>
 	   <propval name='server_versmin' type='integer' value='2'/>
-	   <propval name='servers' type='integer' value='16'/>
+	   <propval name='servers' type='integer' value='1024'/>
 	   <propval name='mountd_listen_backlog' type='integer' value='64'/>
 	   <propval name='mountd_max_threads' type='integer' value='16'/>
 	 </property_group>
--- old/usr/src/lib/libshare/nfs/libshare_nfs.c	Wed Dec  7 11:40:33 2016
+++ new/usr/src/lib/libshare/nfs/libshare_nfs.c	Wed Dec  7 11:40:33 2016
@@ -2492,7 +2492,7 @@
 } proto_options[] = {
 #define	PROTO_OPT_NFSD_SERVERS			0
 	{"nfsd_servers",
-	    "servers", PROTO_OPT_NFSD_SERVERS, OPT_TYPE_NUMBER, 16, SVC_NFSD,
+	    "servers", PROTO_OPT_NFSD_SERVERS, OPT_TYPE_NUMBER, 1024, SVC_NFSD,
 	    1, INT32_MAX},
 #define	PROTO_OPT_LOCKD_LISTEN_BACKLOG		1
 	{"lockd_listen_backlog",
@@ -2500,7 +2500,7 @@
 	    OPT_TYPE_NUMBER, 32, SVC_LOCKD, 32, INT32_MAX},
 #define	PROTO_OPT_LOCKD_SERVERS			2
 	{"lockd_servers",
-	    "lockd_servers", PROTO_OPT_LOCKD_SERVERS, OPT_TYPE_NUMBER, 20,
+	    "lockd_servers", PROTO_OPT_LOCKD_SERVERS, OPT_TYPE_NUMBER, 256,
 	    SVC_LOCKD, 1, INT32_MAX},
 #define	PROTO_OPT_LOCKD_RETRANSMIT_TIMEOUT	3
 	{"lockd_retransmit_timeout",
--- old/usr/src/man/man1m/sharectl.1m	Wed Dec  7 11:40:33 2016
+++ new/usr/src/man/man1m/sharectl.1m	Wed Dec  7 11:40:33 2016
@@ -18,7 +18,7 @@
 .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
 .\" Copyright 2016 Nexenta Systems, Inc.
 .\"
-.Dd March 1, 2016
+.Dd December 16, 2016
 .Dt SHARECTL 1M
 .Os
 .Sh NAME
@@ -140,11 +140,11 @@
 .Bd -literal
 # sharectl get nfs
 lockd_listen_backlog=32
-lockd_servers=20
+lockd_servers=256
 lockd_retransmit_timeout=5
 grace_period=90
 nfsmapid_domain=sun.com
-servers=16
+servers=1024
 server_versmin=2
 server_versmax=4
 max_connections=-1
--- old/usr/src/man/man4/nfs.4	Wed Dec  7 11:40:33 2016
+++ new/usr/src/man/man4/nfs.4	Wed Dec  7 11:40:33 2016
@@ -19,7 +19,7 @@
 .\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
 .\" Copyright 2016 Nexenta Systems, Inc.
 .\"
-.Dd November 16, 2016
+.Dd December 16, 2016
 .Dt NFS 4
 .Os
 .Sh NAME
@@ -140,7 +140,7 @@
 on the
 .Nm nfsd
 command line. The default is
-.Li 16 .
+.Li 1024 .
 .It Sy lockd_listen_backlog Ns = Ns Ar num
 Set connection queue length for
 .Nm lockd
@@ -149,7 +149,7 @@
 .It Sy lockd_servers Ns = Ns Ar num
 Maximum number of concurrent
 .Nm lockd
-requests. The default is 20.
+requests. The default is 256.
 .It Sy lockd_retransmit_timeout Ns = Ns Ar num
 Retransmit timeout, in seconds, before
 .Nm lockd
--- old/usr/src/uts/common/rpc/svc_clts.c	Wed Dec  7 11:40:33 2016
+++ new/usr/src/uts/common/rpc/svc_clts.c	Wed Dec  7 11:40:33 2016
@@ -22,6 +22,7 @@
 /*
  * Copyright 2015 Nexenta Systems, Inc.  All rights reserved.
  *  Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012 by Delphix. All rights reserved.
  */
 
 /*	Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T	*/
@@ -747,12 +748,12 @@
  * to the service load so that there is likely to be a response entry
  * when the first retransmission comes in.
  */
-#define	MAXDUPREQS	1024
+#define	MAXDUPREQS	8192
 
 /*
  * This should be appropriately scaled to MAXDUPREQS.
  */
-#define	DRHASHSZ	257
+#define	DRHASHSZ	2053
 
 #if ((DRHASHSZ & (DRHASHSZ - 1)) == 0)
 #define	XIDHASH(xid)	((xid) & (DRHASHSZ - 1))
--- old/usr/src/uts/common/rpc/svc_cots.c	Wed Dec  7 11:40:33 2016
+++ new/usr/src/uts/common/rpc/svc_cots.c	Wed Dec  7 11:40:33 2016
@@ -22,6 +22,7 @@
 /*
  * Copyright 2015 Nexenta Systems, Inc.  All rights reserved.
  *  Copyright (c) 1993, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012 by Delphix. All rights reserved.
  */
 
 /*	Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T	*/
@@ -713,12 +714,12 @@
  * to the service load so that there is likely to be a response entry
  * when the first retransmission comes in.
  */
-#define	MAXDUPREQS	1024
+#define	MAXDUPREQS	8192
 
 /*
  * This should be appropriately scaled to MAXDUPREQS.
  */
-#define	DRHASHSZ	257
+#define	DRHASHSZ	2053
 
 #if ((DRHASHSZ & (DRHASHSZ - 1)) == 0)
 #define	XIDHASH(xid)	((xid) & (DRHASHSZ - 1))
--- old/usr/src/uts/common/rpc/svc_rdma.c	Wed Dec  7 11:40:33 2016
+++ new/usr/src/uts/common/rpc/svc_rdma.c	Wed Dec  7 11:40:33 2016
@@ -20,6 +20,7 @@
  */
 /*
  * Copyright (c) 1983, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012 by Delphix. All rights reserved.
  * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
  */
 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */
@@ -1139,12 +1140,12 @@
  * to the service load so that there is likely to be a response entry
  * when the first retransmission comes in.
  */
-#define	MAXDUPREQS	1024
+#define	MAXDUPREQS	8192
 
 /*
  * This should be appropriately scaled to MAXDUPREQS.
  */
-#define	DRHASHSZ	257
+#define	DRHASHSZ	2053
 
 #if ((DRHASHSZ & (DRHASHSZ - 1)) == 0)
 #define	XIDHASH(xid)	((xid) & (DRHASHSZ - 1))
