From d483315095be651d6bf62f2131fe10d45c04246b Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Tue, 30 Mar 2010 14:43:31 -0700 Subject: [PATCH] msg: fix uses of MOSDOp destructor to use put() --- src/osd/OSD.cc | 10 +++++----- src/osd/ReplicatedPG.cc | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index dbb6e4cd0c35d..59d69fe37c1d3 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -1125,14 +1125,14 @@ void OSD::handle_osd_ping(MOSDPing *m) if (!is_active()) { dout(10) << "handle_osd_ping - not active" << dendl; - delete m; + m->put(); return; } if (ceph_fsid_compare(&superblock.fsid, &m->fsid)) { dout(20) << "handle_osd_ping from " << m->get_source() << " bad fsid " << m->fsid << " != " << superblock.fsid << dendl; - delete m; + m->put(); return; } @@ -1171,7 +1171,7 @@ void OSD::handle_osd_ping(MOSDPing *m) map_lock.put_read(); heartbeat_lock.Unlock(); - delete m; + m->put(); } void OSD::heartbeat_entry() @@ -3974,14 +3974,14 @@ void OSD::reply_op_error(MOSDOp *op, int err) { MOSDOpReply *reply = new MOSDOpReply(op, err, osdmap->get_epoch(), CEPH_OSD_FLAG_ACK); messenger->send_message(reply, op->get_orig_source_inst()); - delete op; + op->put(); } void OSD::handle_misdirected_op(PG *pg, MOSDOp *op) { if (op->get_map_epoch() < pg->info.history.same_primary_since) { dout(7) << *pg << " changed after " << op->get_map_epoch() << ", dropping" << dendl; - delete op; + op->put(); } else { dout(7) << *pg << " misdirected op in " << op->get_map_epoch() << dendl; stringstream ss; diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 931a79fb6b5ac..ab5bf98f13b4c 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -444,7 +444,7 @@ void ReplicatedPG::do_pg_op(MOSDOp *op) reply->set_data(outdata); reply->set_result(result); osd->messenger->send_message(reply, op->get_orig_source_inst()); - delete op; + op->put(); } void ReplicatedPG::calc_trim_to() @@ -602,7 +602,7 @@ void ReplicatedPG::do_op(MOSDOp *op) reply->get_header().data_off = ctx->data_off; reply->set_result(result); osd->messenger->send_message(reply, op->get_orig_source_inst()); - delete op; + op->put(); delete ctx; put_object_context(obc); return; -- 2.39.5