diff options
Diffstat (limited to 'libglusterfs/src/statedump.c')
| -rw-r--r-- | libglusterfs/src/statedump.c | 23 | 
1 files changed, 18 insertions, 5 deletions
diff --git a/libglusterfs/src/statedump.c b/libglusterfs/src/statedump.c index 3811ef69234..dbbccdb44c3 100644 --- a/libglusterfs/src/statedump.c +++ b/libglusterfs/src/statedump.c @@ -410,6 +410,10 @@ gf_proc_dump_xlator_info (xlator_t *top)                      GF_PROC_DUMP_IS_XL_OPTION_ENABLED (fd))                          trav->dumpops->fd (trav); +                if (trav->dumpops->history && +                    GF_PROC_DUMP_IS_XL_OPTION_ENABLED (history)) +                        trav->dumpops->history (trav); +                  trav = trav->next;          } @@ -472,6 +476,8 @@ gf_proc_dump_enable_all_options ()          GF_PROC_DUMP_SET_OPTION (dump_options.xl_options.dump_inodectx,                                   _gf_true);          GF_PROC_DUMP_SET_OPTION (dump_options.xl_options.dump_fdctx, _gf_true); +        GF_PROC_DUMP_SET_OPTION (dump_options.xl_options.dump_history, +                                 _gf_true);          return 0;  } @@ -490,7 +496,8 @@ gf_proc_dump_disable_all_options ()          GF_PROC_DUMP_SET_OPTION (dump_options.xl_options.dump_inodectx,                                   _gf_false);          GF_PROC_DUMP_SET_OPTION (dump_options.xl_options.dump_fdctx, _gf_false); - +        GF_PROC_DUMP_SET_OPTION (dump_options.xl_options.dump_history, +                                 _gf_false);          return 0;  } @@ -521,6 +528,8 @@ gf_proc_dump_parse_set_option (char *key, char *value)                  opt_key = &dump_options.xl_options.dump_inodectx;          } else if (!strncasecmp (key, "fdctx", strlen ("fdctx"))) {                  opt_key = &dump_options.xl_options.dump_fdctx; +        } else if (!strncasecmp (key, "history", strlen ("history"))) { +                opt_key = &dump_options.xl_options.dump_history;          }          if (!opt_key) { @@ -529,8 +538,12 @@ gf_proc_dump_parse_set_option (char *key, char *value)                            "matched key : %s\n", key);                  ret = write (gf_dump_fd, buf, strlen (buf)); -                ret = -1; -                goto out; +                /* warning suppression */ +                if (ret >= 0) { +                        ret = -1; +                        goto out; +                } +          }          opt_value = (strncasecmp (value, "yes", 3) ? @@ -614,11 +627,11 @@ gf_proc_dump_info (int signum)          } else                  strncpy (brick_name, "glusterdump", sizeof (brick_name)); -        ret = gf_proc_dump_open (ctx->statedump_path, brick_name); +        ret = gf_proc_dump_options_init (brick_name);          if (ret < 0)                  goto out; -        ret = gf_proc_dump_options_init (brick_name); +        ret = gf_proc_dump_open (ctx->statedump_path, brick_name);          if (ret < 0)                  goto out;  | 
