summaryrefslogtreecommitdiffstats
path: root/xlators/nfs/server
diff options
context:
space:
mode:
authorVijay Bellur <vbellur@redhat.com>2015-04-06 17:30:02 +0530
committerVijay Bellur <vbellur@redhat.com>2015-05-03 11:08:11 -0700
commit42c51dcdf3e99d955b98bab53afee0a3c9a2a7df (patch)
tree010e5c61e5a8bf81fb57c322e8bf18ee8157861e /xlators/nfs/server
parent8e76a10bb4d598a6a7d1ca43465f285233e12d5f (diff)
nfs: Enable throttling for rpcsvc
Busy nfs servers need throttling to prevent duplicate requests from casuing an increase in memory consumption. Change-Id: I855bb1e841ba06b523e55f86f7788a0f7a49d444 BUG: 1216310 Signed-off-by: Vijay Bellur <vbellur@redhat.com> Reviewed-on: http://review.gluster.org/10269 Reviewed-by: Niels de Vos <ndevos@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Raghavendra G <rgowdapp@redhat.com> Tested-by: Raghavendra G <rgowdapp@redhat.com> Reviewed-on: http://review.gluster.org/10444 Tested-by: NetBSD Build System
Diffstat (limited to 'xlators/nfs/server')
-rw-r--r--xlators/nfs/server/src/nfs.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/xlators/nfs/server/src/nfs.c b/xlators/nfs/server/src/nfs.c
index 965aec7daa9..2ab8e5b983a 100644
--- a/xlators/nfs/server/src/nfs.c
+++ b/xlators/nfs/server/src/nfs.c
@@ -36,6 +36,7 @@
#include "acl3.h"
#include "rpc-drc.h"
#include "syscall.h"
+#include "rpcsvc.h"
#define OPT_SERVER_AUX_GIDS "nfs.server-aux-gids"
#define OPT_SERVER_GID_CACHE_TIMEOUT "nfs.server.aux-gid-timeout"
@@ -1046,6 +1047,12 @@ nfs_init_state (xlator_t *this)
goto free_foppool;
}
+ ret = rpcsvc_set_throttle_on (nfs->rpcsvc);
+ if (ret) {
+ gf_log (GF_NFS, GF_LOG_ERROR, "Enabling throttle failed");
+ goto free_foppool;
+ }
+
ret = rpcsvc_set_outstanding_rpc_limit (nfs->rpcsvc,
this->options,
RPCSVC_DEF_NFS_OUTSTANDING_RPC_LIMIT);