OPTION(osd_deep_scrub_keys, OPT_INT)
OPTION(osd_deep_scrub_update_digest_min_age, OPT_INT) // objects must be this old (seconds) before we update the whole-object digest on scrub
OPTION(osd_skip_data_digest, OPT_BOOL)
+OPTION(osd_distrust_data_digest, OPT_BOOL)
OPTION(osd_deep_scrub_large_omap_object_key_threshold, OPT_U64)
OPTION(osd_deep_scrub_large_omap_object_value_sum_threshold, OPT_U64)
OPTION(osd_class_dir, OPT_STR) // where rados plugins are stored
bufferlist::iterator *bl_it)
{
dout(20) << __func__ << dendl;
- bool skip_data_digest = osd->store->has_builtin_csum() &&
- g_conf->osd_skip_data_digest;
+ bool skip_data_digest =
+ (osd->store->has_builtin_csum() && g_conf->osd_skip_data_digest) ||
+ g_conf->osd_distrust_data_digest;
auto& op = osd_op.op;
if (op.checksum.chunk_size > 0) {
{
dout(20) << __func__ << dendl;
ceph_osd_op& op = osd_op.op;
- bool skip_data_digest = osd->store->has_builtin_csum() &&
- g_conf->osd_skip_data_digest;
+ bool skip_data_digest =
+ (osd->store->has_builtin_csum() && g_conf->osd_skip_data_digest) ||
+ g_conf->osd_distrust_data_digest;
auto& oi = ctx->new_obs.oi;
uint64_t size = oi.size;
__u32 seq = oi.truncate_seq;
uint64_t size = oi.size;
bool trimmed_read = false;
- bool skip_data_digest = osd->store->has_builtin_csum() &&
- g_conf->osd_skip_data_digest;
+ bool skip_data_digest =
+ (osd->store->has_builtin_csum() && g_conf->osd_skip_data_digest) ||
+ g_conf->osd_distrust_data_digest;
// are we beyond truncate_size?
if ( (seq < op.extent.truncate_seq) &&
auto& op = osd_op.op;
auto& oi = ctx->new_obs.oi;
auto& soid = oi.soid;
- bool skip_data_digest = osd->store->has_builtin_csum() &&
- g_conf->osd_skip_data_digest;
+ bool skip_data_digest =
+ (osd->store->has_builtin_csum() && g_conf->osd_skip_data_digest) ||
+ g_conf->osd_distrust_data_digest;
if (op.extent.truncate_seq) {
dout(0) << "sparse_read does not support truncation sequence " << dendl;
ObjectState& obs = ctx->new_obs;
object_info_t& oi = obs.oi;
const hobject_t& soid = oi.soid;
- bool skip_data_digest = osd->store->has_builtin_csum() &&
- g_conf->osd_skip_data_digest;
+ bool skip_data_digest =
+ (osd->store->has_builtin_csum() && g_conf->osd_skip_data_digest) ||
+ g_conf->osd_distrust_data_digest;
PGTransaction* t = ctx->op_t.get();
int result = 0;
object_copy_cursor_t cursor;
uint64_t out_max;
- bool skip_data_digest = osd->store->has_builtin_csum() &&
- g_conf->osd_skip_data_digest;
+ bool skip_data_digest =
+ (osd->store->has_builtin_csum() && g_conf->osd_skip_data_digest) ||
+ g_conf->osd_distrust_data_digest;
try {
::decode(cursor, bp);