diff options
| author | Anand Avati <avati@redhat.com> | 2014-03-29 06:01:36 -0700 |
|---|---|---|
| committer | Anand Avati <avati@redhat.com> | 2014-05-05 17:29:27 -0700 |
| commit | f01626d5bad8eb0298897e90a124301008cdd0da (patch) | |
| tree | 9afe279162d94fc900a09e8b5acf0440606e7d1e /xlators/meta/src/plugins/graph-dir.c | |
| parent | 8160399a36eff62a49a066f16dea9140d877c5e8 (diff) | |
meta: export process state dump
Various parts of process state dump are exposed
through most appropriate virual files/dirs
Change-Id: Iff30f8ea76552f2f6d9c98def688c5ec4bc6f2af
BUG: 1089216
Signed-off-by: Anand Avati <avati@redhat.com>
Reviewed-on: http://review.gluster.org/7542
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Harshavardhana <harsha@harshavardhana.net>
Diffstat (limited to 'xlators/meta/src/plugins/graph-dir.c')
| -rw-r--r-- | xlators/meta/src/plugins/graph-dir.c | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/xlators/meta/src/plugins/graph-dir.c b/xlators/meta/src/plugins/graph-dir.c deleted file mode 100644 index 3cd6b482e74..00000000000 --- a/xlators/meta/src/plugins/graph-dir.c +++ /dev/null @@ -1,106 +0,0 @@ -/* - Copyright (c) 2014 Red Hat, Inc. <http://www.redhat.com> - This file is part of GlusterFS. - - This file is licensed to you under your choice of the GNU Lesser - General Public License, version 3 or any later version (LGPLv3 or - later), or the GNU General Public License, version 2 (GPLv2), in all - cases as published by the Free Software Foundation. -*/ - -#ifndef _CONFIG_H -#define _CONFIG_H -#include "config.h" -#endif - -#include "xlator.h" -#include "defaults.h" - -#include "meta-mem-types.h" -#include "meta.h" -#include "meta-hooks.h" - - -static struct meta_dirent graph_dir_dirents[] = { - DOT_DOTDOT, - - { .name = "top", - .type = IA_IFLNK, - .hook = meta_top_link_hook, - }, - { .name = "volfile", - .type = IA_IFREG, - .hook = meta_volfile_file_hook, - }, - { .name = NULL } -}; - - -static int -graph_dir_fill (xlator_t *this, inode_t *inode, struct meta_dirent **dp) -{ - struct meta_dirent *dirents = NULL; - glusterfs_graph_t *graph = NULL; - int i = 0; - int count = 0; - xlator_t *xl = NULL; - - graph = meta_ctx_get (inode, this); - - for (xl = graph->first; xl; xl = xl->next) - count++; - - dirents = GF_CALLOC (sizeof (*dirents), count, gf_meta_mt_dirents_t); - if (!dirents) - return -1; - - i = 0; - for (xl = graph->first; xl; xl = xl->next) { - dirents[i].name = gf_strdup (xl->name); - dirents[i].type = IA_IFDIR; - dirents[i].hook = meta_xlator_dir_hook; - i++; - } - - *dp = dirents; - return i; -} - - -struct meta_ops graph_dir_ops = { - .fixed_dirents = graph_dir_dirents, - .dir_fill = graph_dir_fill, -}; - - -static glusterfs_graph_t * -glusterfs_graph_lookup (xlator_t *this, const char *graph_uuid) -{ - glusterfs_graph_t *graph = NULL; - glusterfs_graph_t *tmp = NULL; - - list_for_each_entry (tmp, &this->ctx->graphs, list) { - if (strcmp (graph_uuid, tmp->graph_uuid) == 0) { - graph = tmp; - break; - } - } - - return graph; -} - - -int -meta_graph_dir_hook (call_frame_t *frame, xlator_t *this, loc_t *loc, - dict_t *xdata) -{ - glusterfs_graph_t *graph = NULL; - - graph = glusterfs_graph_lookup (this, loc->name); - - meta_ops_set (loc->inode, this, &graph_dir_ops); - - meta_ctx_set (loc->inode, this, (void *) graph); - - return 0; -} |
