Message ID | 1305565073-9976-2-git-send-email-jaschut@sandia.gov (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c index db12abc..3a88470 100644 --- a/net/ceph/messenger.c +++ b/net/ceph/messenger.c @@ -1713,6 +1713,17 @@ more: /* open the socket first? */ if (con->sock == NULL) { + /* working on a message? put it back on out_queue. */ + if (con->out_msg) { + struct ceph_msg *m = con->out_msg; + if (test_bit(LOSSYTX, &con->state)) { + list_add(&m->list_head, &con->out_queue); + } else { + list_move(&m->list_head, &con->out_queue); + ceph_msg_put(m); + } + con->out_msg = NULL; + } prepare_write_banner(msgr, con); prepare_write_connect(msgr, con, 1); prepare_read_banner(con);