Skip to content

Commit

Permalink
ceph: plug msg leak in con_fault
Browse files Browse the repository at this point in the history
Signed-off-by: Sage Weil <sage@newdream.net>
  • Loading branch information
Sage Weil committed Dec 22, 2009
1 parent c86a293 commit 5e095e8
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions fs/ceph/messenger.c
Original file line number Diff line number Diff line change
Expand Up @@ -1434,8 +1434,9 @@ static int read_partial_message(struct ceph_connection *con)
*/
static void process_message(struct ceph_connection *con)
{
struct ceph_msg *msg = con->in_msg;
struct ceph_msg *msg;

msg = con->in_msg;
con->in_msg = NULL;

/* if first message, set peer_name */
Expand Down Expand Up @@ -1810,7 +1811,11 @@ static void ceph_fault(struct ceph_connection *con)
clear_bit(BUSY, &con->state); /* to avoid an improbable race */

con_close_socket(con);
con->in_msg = NULL;

if (con->in_msg) {
ceph_msg_put(con->in_msg);
con->in_msg = NULL;
}

/* If there are no messages in the queue, place the connection
* in a STANDBY state (i.e., don't try to reconnect just yet). */
Expand Down

0 comments on commit 5e095e8

Please sign in to comment.