This patch fixes bugs that block_size_shift info was forgotten after cluster shutdown and start sheepdog.
Add block_size_shift info to cluster config file. Signed-off-by: Teruaki Ishizaki <ishizaki.teru...@lab.ntt.co.jp> --- sheep/config.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/sheep/config.c b/sheep/config.c index 383a1ed..dfad5fd 100644 --- a/sheep/config.c +++ b/sheep/config.c @@ -11,7 +11,7 @@ #include "sheep_priv.h" -#define SD_FORMAT_VERSION 0x0005 +#define SD_FORMAT_VERSION 0x0006 #define SD_CONFIG_SIZE 40 static struct sheepdog_config { @@ -21,7 +21,7 @@ static struct sheepdog_config { uint8_t store[STORE_LEN]; uint8_t shutdown; uint8_t copy_policy; - uint8_t __pad; + uint8_t block_size_shift; uint16_t version; uint64_t space; } config; @@ -64,6 +64,7 @@ static int get_cluster_config(struct cluster_info *cinfo) cinfo->nr_copies = config.copies; cinfo->flags = config.flags; cinfo->copy_policy = config.copy_policy; + cinfo->block_size_shift = config.block_size_shift; memcpy(cinfo->store, config.store, sizeof(config.store)); return SD_RES_SUCCESS; @@ -155,6 +156,7 @@ int set_cluster_config(const struct cluster_info *cinfo) config.copies = cinfo->nr_copies; config.copy_policy = cinfo->copy_policy; config.flags = cinfo->flags; + config.block_size_shift = cinfo->block_size_shift; memset(config.store, 0, sizeof(config.store)); pstrcpy((char *)config.store, sizeof(config.store), (char *)cinfo->store); -- 1.7.1 -- sheepdog mailing list sheepdog@lists.wpkg.org http://lists.wpkg.org/mailman/listinfo/sheepdog