From dd2c197c1d5d5942a65c860997ec1d5793ef249f Mon Sep 17 00:00:00 2001 From: Anand Avati Date: Fri, 19 Aug 2011 14:56:13 +0530 Subject: option validation: further fixes fixes in option handling changes Change-Id: I0a44cdb088e3f08cd43d583a580736d0903fa88c BUG: 3415 Reviewed-on: http://review.gluster.com/261 Tested-by: Gluster Build System Reviewed-by: Anand Avati --- xlators/cluster/afr/src/afr.c | 15 +++++++++++++++ xlators/performance/write-behind/src/write-behind.c | 2 +- xlators/protocol/client/src/client.c | 3 +++ 3 files changed, 19 insertions(+), 1 deletion(-) (limited to 'xlators') diff --git a/xlators/cluster/afr/src/afr.c b/xlators/cluster/afr/src/afr.c index 289a27d60..903060f49 100644 --- a/xlators/cluster/afr/src/afr.c +++ b/xlators/cluster/afr/src/afr.c @@ -86,6 +86,18 @@ xlator_subvolume_index (xlator_t *this, xlator_t *subvol) } +int +xlator_subvolume_count (xlator_t *this) +{ + int i = 0; + xlator_list_t *list = NULL; + + for (list = this->children; list; list = list->next) + i++; + return i; +} + + int reconfigure (xlator_t *this, dict_t *options) { @@ -186,6 +198,7 @@ init (xlator_t *this) priv = this->private; priv->read_child = -1; + GF_OPTION_INIT ("read-subvolume", read_subvol, xlator, out); if (read_subvol) { priv->read_child = xlator_subvolume_index (this, read_subvol); @@ -245,6 +258,8 @@ init (xlator_t *this) priv->wait_count = 1; + child_count = xlator_subvolume_count (this); + priv->child_count = child_count; LOCK_INIT (&priv->lock); diff --git a/xlators/performance/write-behind/src/write-behind.c b/xlators/performance/write-behind/src/write-behind.c index 1eff4385a..361c90d7e 100644 --- a/xlators/performance/write-behind/src/write-behind.c +++ b/xlators/performance/write-behind/src/write-behind.c @@ -3035,7 +3035,7 @@ struct volume_options options[] = { }, { .key = {"disable-for-first-nbytes"}, .type = GF_OPTION_TYPE_SIZET, - .min = 1, + .min = 0, .max = 1 * GF_UNIT_MB, .default_value = "0", }, diff --git a/xlators/protocol/client/src/client.c b/xlators/protocol/client/src/client.c index 355b0d160..c0d52488a 100644 --- a/xlators/protocol/client/src/client.c +++ b/xlators/protocol/client/src/client.c @@ -2365,6 +2365,9 @@ struct volume_options options[] = { { .key = {"remote-host"}, .type = GF_OPTION_TYPE_INTERNET_ADDRESS }, + { .key = {"remote-port"}, + .type = GF_OPTION_TYPE_INT, + }, { .key = {"remote-subvolume"}, .type = GF_OPTION_TYPE_ANY }, -- cgit