]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: last put_connection after dropping spinlock
authorSage Weil <sage@newdream.net>
Fri, 15 Aug 2008 06:10:36 +0000 (23:10 -0700)
committerSage Weil <sage@newdream.net>
Mon, 8 Sep 2008 16:33:59 +0000 (09:33 -0700)
src/kernel/messenger.c

index 4a21f490a0ab16bd2c6da297297bc358f4e8a45e..81d1cc559423b941ff02fcf8e04009299aa67952 100644 (file)
@@ -1794,9 +1794,10 @@ void ceph_messenger_mark_down(struct ceph_messenger *msgr,
                     IPQUADPORT(con->peer_addr.ipaddr), con);
                set_bit(CLOSED, &con->state);  /* in case there's queued work */
                __remove_connection(msgr, con);
-               put_connection(con);
        }
        spin_unlock(&msgr->con_lock);
+       if (con)
+               put_connection(con);
 }