diff options
author | Santosh Kumar Pradhan <spradhan@redhat.com> | 2013-11-21 17:13:58 +0530 |
---|---|---|
committer | Vijay Bellur <vbellur@redhat.com> | 2013-11-25 05:40:57 -0800 |
commit | b87d96b97d4a0cdc0883bec8ea8b4730b82fb3ba (patch) | |
tree | f972fcedd615f6c6acf81ed4edcf486bfa2d9881 /xlators/nfs/server/src/nfs3.c | |
parent | 07a3b04d5ce1d7a22a4ce01f1b6b8f8fc6ffbb05 (diff) |
gNFS: More clean up for Gluster NFS
1) Fix the typo in NFS default ACL
The typo was introduced as part of the Fix to BZ 1009210 i.e.
http://review.gluster.org/5980. The user ACL xattr structure
was passed to default ACL xattr.
2) Clean up NFS code to avoid unnecessary SEGV in
rpcsvc_drc_reconfigure() which was not validating the
svc->drc. Add a routine rpcsvc_drc_deinit() to handle
the clean up of DRC specific data structures. For init(),
use rpcsvc_drc_init().
3) nfs_init_state() was returning wrong value even if the
registration with portmapper failed, causing the NFS
server process to hang around. As a result it used to
get SEGV during rpcsvc_drc_reconfigure().
4) Clean up memfactor usage across nfs.c nfs3.c.
Change-Id: I5cea26cb68dd8a822ec0ae104952f67fe63fa703
BUG: 1009210
Signed-off-by: Santosh Kumar Pradhan <spradhan@redhat.com>
Reviewed-on: http://review.gluster.org/6329
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'xlators/nfs/server/src/nfs3.c')
-rw-r--r-- | xlators/nfs/server/src/nfs3.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/xlators/nfs/server/src/nfs3.c b/xlators/nfs/server/src/nfs3.c index f914c31937d..0fea135c784 100644 --- a/xlators/nfs/server/src/nfs3.c +++ b/xlators/nfs/server/src/nfs3.c @@ -5256,8 +5256,6 @@ nfs3_init_options (struct nfs3_state *nfs3, dict_t *options) * accommodate the NFS headers also in the same buffer. */ nfs3->iobsize = nfs3->iobsize * 2; - /* mem-factor */ - nfs3->memfactor = GF_NFS3_DEFAULT_MEMFACTOR; ret = 0; err: return ret; @@ -5507,7 +5505,7 @@ nfs3_init_state (xlator_t *nfsx) unsigned int localpool = 0; struct nfs_state *nfs = NULL; - if (!nfsx) + if ((!nfsx) || (!nfsx->private)) return NULL; nfs3 = (struct nfs3_state *)GF_CALLOC (1, sizeof (*nfs3), @@ -5526,7 +5524,7 @@ nfs3_init_state (xlator_t *nfsx) nfs3->iobpool = nfsx->ctx->iobuf_pool; - localpool = nfs3->memfactor * GF_NFS_CONCURRENT_OPS_MULT; + localpool = nfs->memfactor * GF_NFS_CONCURRENT_OPS_MULT; gf_log (GF_NFS3, GF_LOG_TRACE, "local pool: %d", localpool); nfs3->localpool = mem_pool_new (nfs3_call_state_t, localpool); if (!nfs3->localpool) { |