summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-07-18 15:02:07 -0700
committerGreg Farnum <greg@inktank.com>2013-07-19 13:21:47 -0700
commitbfadcd2a0eb48c0a46666db9647a6ad9fe24a038 (patch)
tree1c6868ce70ff680123b1099669837903c2308c30
parent561ac0b173161a429b0bfecb78676fb38af14e5c (diff)
downloadceph-bfadcd2a0eb48c0a46666db9647a6ad9fe24a038.tar.gz
osd/ReplicatedPG: fix obc leak on invalid LIST_SNAPS op
Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Samuel Just <sam.just@inktank.com>
-rw-r--r--src/osd/ReplicatedPG.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc
index 14708e38cd9..453fdacfb76 100644
--- a/src/osd/ReplicatedPG.cc
+++ b/src/osd/ReplicatedPG.cc
@@ -821,6 +821,7 @@ void ReplicatedPG::do_op(OpRequestRef op)
if (osd_op.op.op == CEPH_OSD_OP_LIST_SNAPS &&
m->get_snapid() != CEPH_SNAPDIR) {
dout(10) << "LIST_SNAPS with incorrect context" << dendl;
+ put_object_context(obc);
osd->reply_op_error(op, -EINVAL);
return;
}