diff --git a/casadm/cas_lib.c b/casadm/cas_lib.c index 88dbbeb..a6b0c8e 100644 --- a/casadm/cas_lib.c +++ b/casadm/cas_lib.c @@ -2988,17 +2988,7 @@ int zero_md(const char *cache_device, bool force) return FAILURE; } - if (!cmd_info.metadata_compatible) { - if (!force) { - cas_printf(LOG_ERR, "Unable to determine whether cache contains dirty data due to metadata mismatch.\n" - "Clearing metadata might result in loss of dirty data. In order to inspect cache content\n" - "please load cache instance using matching OpenCAS version. Alternatively, if you wish to clear\n" - "metadata anyway, please use '--force' option.\n"); - return FAILURE; - } else { - cas_printf(LOG_WARNING, "Clearing metadata with unknown version - potential loss of dirty data.\n"); - } - } else if (!cmd_info.clean_shutdown) { + if (!cmd_info.clean_shutdown) { if (!force) { cas_printf(LOG_ERR, "Cache instance did not shut down cleanly. It might contain dirty data. \n" "Clearing metadata might result in loss of dirty data. Please recover cache instance\n" diff --git a/modules/cas_cache/layer_cache_management.c b/modules/cas_cache/layer_cache_management.c index 1f12432..60134cf 100644 --- a/modules/cas_cache/layer_cache_management.c +++ b/modules/cas_cache/layer_cache_management.c @@ -1016,15 +1016,12 @@ static void cache_mngt_metadata_probe_end(void *priv, int error, cmd_info->is_cache_device = false; cmd_info->metadata_compatible = false; *context->result = 0; - } else if (error == -OCF_ERR_METADATA_VER) { + } else if (error == -OCF_ERR_METADATA_VER || error == 0) { cmd_info->is_cache_device = true; - cmd_info->metadata_compatible = false; - *context->result = 0; - } else if (error == 0) { - cmd_info->is_cache_device = true; - cmd_info->metadata_compatible = true; + cmd_info->metadata_compatible = !error; cmd_info->clean_shutdown = status->clean_shutdown; cmd_info->cache_dirty = status->cache_dirty; + *context->result = 0; } complete(&context->cmpl);