summaryrefslogtreecommitdiffstats
path: root/api
diff options
context:
space:
mode:
authorAmar Tumballi <amarts@redhat.com>2012-08-02 13:14:25 +0530
committerAnand Avati <avati@redhat.com>2012-08-03 02:01:52 -0700
commited4b76ba9c545f577287c0e70ae3cc853a0d5f3f (patch)
treedeffb91a0cee620ac7fcc8c7914dbca73668574e /api
parent66205114267ec659b4ad8084c7e9497009529c61 (diff)
core: reduce the usage of global variables
* move all the 'logging' related global variables into ctx * make gf_fop_list a 'const' global array, hence no init(), no edits. * make sure ctx is allocated without any dependancy on memory-accounting infrastructure, so it can be the first one to get allocated * globals_init() should happen with ctx as argument not yet fixed below in this patchset: * anything with 'THIS' related globals * anything related to compat_errno related globals as its one time init'd and not changed later on. * statedump related globals Change-Id: Iab8fc30d4bfdbded6741d66ff1ed670fdc7b7ad2 Signed-off-by: Amar Tumballi <amarts@redhat.com> BUG: 764890 Reviewed-on: http://review.gluster.com/3767 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'api')
-rw-r--r--api/src/glfs.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/api/src/glfs.c b/api/src/glfs.c
index 01b3bc83674..6b3c2113d53 100644
--- a/api/src/glfs.c
+++ b/api/src/glfs.c
@@ -365,15 +365,18 @@ glfs_new (const char *volname)
int ret = -1;
glusterfs_ctx_t *ctx = NULL;
- /* first globals init, for gf_mem_acct_enable_set () */
- ret = glusterfs_globals_init ();
- if (ret)
- return NULL;
-
ctx = glusterfs_ctx_new ();
if (!ctx) {
return NULL;
}
+
+ gf_mem_acct_enable_set (ctx);
+
+ /* first globals init, for gf_mem_acct_enable_set () */
+ ret = glusterfs_globals_init (ctx);
+ if (ret)
+ return NULL;
+
THIS->ctx = ctx;
/* then ctx_defaults_init, for xlator_mem_acct_init(THIS) */
@@ -440,7 +443,7 @@ glfs_set_logging (struct glfs *fs, const char *logfile, int loglevel)
{
int ret = -1;
- ret = gf_log_init (logfile);
+ ret = gf_log_init (fs->ctx, logfile);
if (ret)
return ret;