diff options
| author | Vijay Bellur <vijay@gluster.com> | 2010-04-22 13:33:09 +0000 | 
|---|---|---|
| committer | Anand V. Avati <avati@dev.gluster.com> | 2010-04-23 06:32:52 -0700 | 
| commit | 582de0677da4be19fc6f873625c58c45d069ab1c (patch) | |
| tree | f10cb3e26e1f92f6ea91034e6f7bb925790dd9bc /xlators/debug/io-stats/src/io-stats.c | |
| parent | 72baa17282f5cf749fa743fd601c7b728ece4fa2 (diff) | |
Memory accounting changes
Memory accounting Changes. Thanks to Vinayak Hegde and Csaba Henk for their
contributions.
Signed-off-by: Vijay Bellur <vijay@gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 329 (Replacing memory allocation functions with mem-type functions)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=329
Diffstat (limited to 'xlators/debug/io-stats/src/io-stats.c')
| -rw-r--r-- | xlators/debug/io-stats/src/io-stats.c | 41 | 
1 files changed, 30 insertions, 11 deletions
diff --git a/xlators/debug/io-stats/src/io-stats.c b/xlators/debug/io-stats/src/io-stats.c index e5ccf10bcb8..09ee86751f2 100644 --- a/xlators/debug/io-stats/src/io-stats.c +++ b/xlators/debug/io-stats/src/io-stats.c @@ -41,6 +41,7 @@  #include <errno.h>  #include "glusterfs.h"  #include "xlator.h" +#include "io-stats-mem-types.h"  struct ios_global_stats { @@ -360,13 +361,13 @@ io_stats_create_cbk (call_frame_t *frame, void *cookie, xlator_t *this,                  goto unwind;          if (op_ret < 0) { -                FREE (path); +                GF_FREE (path);                  goto unwind;          } -        iosfd = CALLOC (1, sizeof (*iosfd)); +        iosfd = GF_CALLOC (1, sizeof (*iosfd), gf_io_stats_mt_ios_fd);          if (!iosfd) { -                FREE (path); +                GF_FREE (path);                  goto unwind;          } @@ -396,13 +397,13 @@ io_stats_open_cbk (call_frame_t *frame, void *cookie, xlator_t *this,                  goto unwind;          if (op_ret < 0) { -                FREE (path); +                GF_FREE (path);                  goto unwind;          } -        iosfd = CALLOC (1, sizeof (*iosfd)); +        iosfd = GF_CALLOC (1, sizeof (*iosfd), gf_io_stats_mt_ios_fd);          if (!iosfd) { -                FREE (path); +                GF_FREE (path);                  goto unwind;          } @@ -1024,7 +1025,7 @@ io_stats_open (call_frame_t *frame, xlator_t *this,  {          BUMP_FOP (OPEN); -        frame->local = strdup (loc->path); +        frame->local = gf_strdup (loc->path);          STACK_WIND (frame, io_stats_open_cbk,                      FIRST_CHILD(this), @@ -1040,7 +1041,7 @@ io_stats_create (call_frame_t *frame, xlator_t *this,  {          BUMP_FOP (CREATE); -        frame->local = strdup (loc->path); +        frame->local = gf_strdup (loc->path);          STACK_WIND (frame, io_stats_create_cbk,                      FIRST_CHILD(this), @@ -1382,8 +1383,8 @@ io_stats_release (xlator_t *this, fd_t *fd)                  io_stats_dump_fd (this, iosfd);                  if (iosfd->filename) -                        FREE (iosfd->filename); -                FREE (iosfd); +                        GF_FREE (iosfd->filename); +                GF_FREE (iosfd);          }          return 0; @@ -1407,6 +1408,24 @@ io_stats_forget (xlator_t *this, fd_t *fd)          return 0;  } +int32_t +mem_acct_init (xlator_t *this) +{ +        int     ret = -1; + +        if (!this) +                return ret; + +        ret = xlator_mem_acct_init (this, gf_io_stats_mt_end + 1); +         +        if (ret != 0) { +                gf_log (this->name, GF_LOG_ERROR, "Memory accounting init" +                        " failed"); +                return ret; +        } + +        return ret; +}  int  init (xlator_t *this) @@ -1432,7 +1451,7 @@ init (xlator_t *this)          options = this->options; -        conf = CALLOC (1, sizeof(*conf)); +        conf = GF_CALLOC (1, sizeof(*conf), gf_io_stats_mt_ios_conf);          LOCK_INIT (&conf->lock);  | 
