From 6feb4a1710b21302ac1bcdbbe24ddda8df0ef76c Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 9 Dec 2014 16:38:10 -0800 Subject: [PATCH] osd: scrub: complain about bad digest in final pass auth check This will only trigger if we choose an auth that is known bad, but that currently can happen, so compalin here too. Signed-off-by: Sage Weil --- src/osd/ReplicatedPG.cc | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 815720bad06a..970dac096311 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -12275,6 +12275,23 @@ void ReplicatedPG::_scrub(ScrubMap& scrubmap) dout(20) << mode << " " << soid << " " << oi << dendl; + if (oi.is_data_digest() && p->second.digest_present && + oi.data_digest != p->second.digest) { + osd->clog->error() << mode << " " << info.pgid << " " << soid + << " on disk data digest 0x" << std::hex + << p->second.digest << " != 0x" + << oi.data_digest << std::dec; + ++scrubber.deep_errors; + } + if (oi.is_omap_digest() && p->second.omap_digest_present && + oi.omap_digest != p->second.omap_digest) { + osd->clog->error() << mode << " " << info.pgid << " " << soid + << " on disk omap digest 0x" << std::hex + << p->second.omap_digest << " != 0x" + << oi.omap_digest << std::dec; + ++scrubber.deep_errors; + } + if (soid.is_snap()) { stat.num_bytes += snapset.get_clone_bytes(soid.snap); } else { -- 2.47.3