From 93984cfca71ab4bf54da80b26ce9090ed76de170 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 10 Jun 2009 13:37:28 -0700 Subject: [PATCH] osd: fix huge memory leak (MOSDOp) --- src/osd/ReplicatedPG.cc | 2 ++ src/osd/ReplicatedPG.h | 1 + 2 files changed, 3 insertions(+) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 4e9093a6613d8..02801f57b204a 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -561,6 +561,8 @@ void ReplicatedPG::do_op(MOSDOp *op) tid_t rep_tid = osd->get_tid(); RepGather *repop = new_repop(ctx, obc, noop, rep_tid); + // note: repop now owns ctx AND ctx->op + for (unsigned i=1; i 0); if (--nref == 0) { assert(!obc); + delete ctx->op; delete ctx; delete this; //generic_dout(0) << "deleting " << this << dendl; -- 2.39.5