From 4625763df501759d2f24ed1d88ffb593fd1b8091 Mon Sep 17 00:00:00 2001 From: Robert Baldyga Date: Fri, 17 Dec 2021 16:29:56 +0100 Subject: [PATCH] Return error on CRC mismatch during recovery Signed-off-by: Robert Baldyga --- src/metadata/metadata_segment.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/metadata/metadata_segment.c b/src/metadata/metadata_segment.c index 0253e68..0b73aa2 100644 --- a/src/metadata/metadata_segment.c +++ b/src/metadata/metadata_segment.c @@ -90,19 +90,11 @@ static void ocf_metadata_check_crc_skip(ocf_pipeline_t pipeline, crc = ocf_metadata_raw_checksum(cache, segment->raw); superblock_crc = ocf_metadata_superblock_get_checksum(segment->superblock, segment_id); - if (crc != superblock_crc) { - /* Checksum does not match */ - if (!clean_shutdown) { - ocf_cache_log(cache, log_warn, - "Loading %s WARNING, invalid checksum\n", - ocf_metadata_segment_names[segment_id]); - } else { - ocf_cache_log(cache, log_err, - "Loading %s ERROR, invalid checksum\n", - ocf_metadata_segment_names[segment_id]); - OCF_PL_FINISH_RET(pipeline, -OCF_ERR_INVAL); - } + ocf_cache_log(cache, log_err, + "Loading %s ERROR, invalid checksum\n", + ocf_metadata_segment_names[segment_id]); + OCF_PL_FINISH_RET(pipeline, -OCF_ERR_INVAL); } ocf_pipeline_next(pipeline);