From: xie xingguo Date: Mon, 23 May 2016 11:18:40 +0000 (+0800) Subject: osd/ReplicatedPG: make do_sub_op() more efficient X-Git-Tag: v11.0.0~58^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6ea5dd5d5536b1c775387e1fd2b49960bcec9846;p=ceph.git osd/ReplicatedPG: make do_sub_op() more efficient Signed-off-by: xie xingguo --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index beeb2c2b33fa..6f31bbf66fe7 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -3145,17 +3145,17 @@ void ReplicatedPG::do_sub_op(OpRequestRef op) assert(m->get_type() == MSG_OSD_SUBOP); dout(15) << "do_sub_op " << *op->get_req() << dendl; - OSDOp *first = NULL; - if (m->ops.size() >= 1) { - first = &m->ops[0]; - } - if (!is_peered()) { waiting_for_peered.push_back(op); op->mark_delayed("waiting for active"); return; } + OSDOp *first = NULL; + if (m->ops.size() >= 1) { + first = &m->ops[0]; + } + if (first) { switch (first->op.op) { case CEPH_OSD_OP_DELETE: