From: Sage Weil Date: Thu, 25 Mar 2010 04:30:19 +0000 (-0700) Subject: ceph: fix theoretically possible double-put on connection X-Git-Tag: v2.6.35-rc1~419^2~50 X-Git-Url: https://bbs.cooldavid.org/git/?a=commitdiff_plain;h=6f46cb29350963527b663c9eb4fe964daa9ae707;p=net-next-2.6.git ceph: fix theoretically possible double-put on connection This would only trigger if we bailed out before resetting r_con_filling_msg because the server reply was corrupt (oversized). Signed-off-by: Sage Weil --- diff --git a/fs/ceph/osd_client.c b/fs/ceph/osd_client.c index 22a33f8c880..3d2bfbc232d 100644 --- a/fs/ceph/osd_client.c +++ b/fs/ceph/osd_client.c @@ -1386,6 +1386,7 @@ static struct ceph_msg *get_reply(struct ceph_connection *con, req->r_reply, req->r_con_filling_msg); ceph_con_revoke_message(req->r_con_filling_msg, req->r_reply); ceph_con_put(req->r_con_filling_msg); + req->r_con_filling_msg = NULL; } if (front > req->r_reply->front.iov_len) {