]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge pull request #36490 from tchaikov/wip-crimson-zero-op
authorKefu Chai <kchai@redhat.com>
Thu, 6 Aug 2020 10:16:58 +0000 (18:16 +0800)
committerGitHub <noreply@github.com>
Thu, 6 Aug 2020 10:16:58 +0000 (18:16 +0800)
crimson/osd: support CEPH_OSD_OP_ZERO op and cls_cxx_write_zero()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
1  2 
src/crimson/osd/ops_executer.cc

index 9388bd96418872d6fc00f3cff871c89b1a6ca229,d6e6fbc72d1b575573a08a82bf67da4b022b5ef8..52d02de08b817f50d61442ee3ae9cbe60bacb82e
@@@ -711,8 -713,13 +711,12 @@@ OpsExecuter::execute_osd_op(OSDOp& osd_
      return do_write_op([this, &osd_op] (auto& backend, auto& os, auto& txn) {
        // FIXME: rework needed. Move this out to do_write_op(), introduce
        // do_write_op_no_user_modify()...
 -      osd_op_params = osd_op_params_t();
        return backend.truncate(os, osd_op, txn, *osd_op_params);
      }, true);
+   case CEPH_OSD_OP_ZERO:
+     return do_write_op([this, &osd_op] (auto& backend, auto& os, auto& txn) {
+       return backend.zero(os, osd_op, txn, *osd_op_params);
+     }, true);
    case CEPH_OSD_OP_SETALLOCHINT:
      return osd_op_errorator::now();
    case CEPH_OSD_OP_SETXATTR: