From 5bb31dfa966df8e470082d7db450844d47448244 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 14 Dec 2009 14:58:11 -0800 Subject: [PATCH] --- yaml --- r: 188651 b: refs/heads/master c: b3d1dbbdd5670d8a9fb01f7dfb1cac522ff6795a h: refs/heads/master i: 188649: d176e68f00c3db15b3c562352d945d56f0aee503 188647: 394543b81f6249e59b1dd320bc191f2decbb886c v: v3 --- [refs] | 2 +- trunk/fs/ceph/messenger.c | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 6a5a6a50cbb8..218e77fb8024 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 92ac41d0a4ab26fb68d3f841332e5d1f15d79123 +refs/heads/master: b3d1dbbdd5670d8a9fb01f7dfb1cac522ff6795a diff --git a/trunk/fs/ceph/messenger.c b/trunk/fs/ceph/messenger.c index 986d8fb9c574..d5eef76a253c 100644 --- a/trunk/fs/ceph/messenger.c +++ b/trunk/fs/ceph/messenger.c @@ -453,12 +453,16 @@ static void prepare_write_message(struct ceph_connection *con) con->out_kvec_bytes = 1 + sizeof(con->out_temp_ack); } - /* move message to sending/sent list */ m = list_first_entry(&con->out_queue, struct ceph_msg, list_head); con->out_msg = m; - ceph_msg_get(m); - list_move_tail(&m->list_head, &con->out_sent); + if (test_bit(LOSSYTX, &con->state)) { + /* put message on sent list */ + ceph_msg_get(m); + list_move_tail(&m->list_head, &con->out_sent); + } else { + list_del_init(&m->list_head); + } m->hdr.seq = cpu_to_le64(++con->out_seq);