From 0b9104e8d59483b21935764c79f8c8c12dff8149 Mon Sep 17 00:00:00 2001 From: Piotr Debski Date: Wed, 18 May 2022 12:12:50 +0200 Subject: [PATCH] Cache metadata and superblock cache line size mismatch check Signed-off-by: Piotr Debski --- src/mngt/ocf_mngt_cache.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mngt/ocf_mngt_cache.c b/src/mngt/ocf_mngt_cache.c index cbb6466..50df9b2 100644 --- a/src/mngt/ocf_mngt_cache.c +++ b/src/mngt/ocf_mngt_cache.c @@ -2415,6 +2415,12 @@ static void _ocf_mngt_activate_compare_superblock_end( OCF_PL_FINISH_RET(context->pipeline, result); if (diff) { + if (cache->conf_meta->line_size != superblock->line_size) { + ocf_cache_log(cache, log_err, "Superblock mismatch. Cache line size in RAM: %lu KiB. " + "Cache line size on disk: %lu KiB.\n", cache->conf_meta->line_size, superblock->line_size); + OCF_PL_FINISH_RET(context->pipeline, -OCF_ERR_CACHE_LINE_SIZE_MISMATCH); + } + ocf_cache_log(cache, log_err, "Superblock mismatch!\n"); OCF_PL_FINISH_RET(context->pipeline, -OCF_ERR_SUPERBLOCK_MISMATCH); }