From 323494932f955e645c399469faa2ed823a1364c6 Mon Sep 17 00:00:00 2001 From: Amar Tumballi Date: Mon, 22 Oct 2012 12:26:57 +0530 Subject: cluster/dht: handle percent option for 'min-free-disk' * with the init option cleanups, setting of 'conf->disk_unit' was reset, which made it not set the '%' in the option. * bring a global check, which makes the option assume its percent, as long as value is < 100. Upstream Patch : http://review.gluster.org/3918 Signed-off-by: Amar Tumballi BUG: 858488 Change-Id: I7916d69ba72f0647881062d910bae73884a1b1c7 Reviewed-on: https://code.engineering.redhat.com/gerrit/144 Reviewed-by: Vijay Bellur Tested-by: Vijay Bellur --- xlators/cluster/dht/src/dht.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/xlators/cluster/dht/src/dht.c b/xlators/cluster/dht/src/dht.c index a678bb9ef04..46ede414d8b 100644 --- a/xlators/cluster/dht/src/dht.c +++ b/xlators/cluster/dht/src/dht.c @@ -324,6 +324,11 @@ reconfigure (xlator_t *this, dict_t *options) GF_OPTION_RECONF ("min-free-disk", conf->min_free_disk, options, percent_or_size, out); + /* option can be any one of percent or bytes */ + conf->disk_unit = 0; + if (conf->min_free_disk < 100) + conf->disk_unit = 'p'; + GF_OPTION_RECONF ("min-free-inodes", conf->min_free_inodes, options, percent, out); GF_OPTION_RECONF ("directory-layout-spread", conf->dir_spread_cnt, @@ -431,6 +436,11 @@ init (xlator_t *this) bool, err); GF_OPTION_INIT ("readdir-optimize", conf->readdir_optimize, bool, err); + /* option can be any one of percent or bytes */ + conf->disk_unit = 0; + if (conf->min_free_disk < 100) + conf->disk_unit = 'p'; + ret = dht_init_subvolumes (this, conf); if (ret == -1) { goto err; -- cgit