diff options
author | Sage Weil <sage@newdream.net> | 2010-04-21 23:45:59 -0400 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2010-05-03 13:49:24 -0400 |
commit | 684be25c52a1e43638ced160be0b0b46596e7f2b (patch) | |
tree | c6cde28f26e12f1ef33990a6d8cb10ab975dddba /fs/ceph/messenger.c | |
parent | d45d0d970f495e04a4e4f46acd74e90f4a4564f9 (diff) |
ceph: fix seq counting for skipped messages
Increment in_seq even when the message is skipped for some reason.
Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/messenger.c')
-rw-r--r-- | fs/ceph/messenger.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ceph/messenger.c b/fs/ceph/messenger.c index cdaaa131add3..e7b91e093f54 100644 --- a/fs/ceph/messenger.c +++ b/fs/ceph/messenger.c | |||
@@ -1379,6 +1379,7 @@ static int read_partial_message(struct ceph_connection *con) | |||
1379 | con->in_base_pos = -front_len - middle_len - data_len - | 1379 | con->in_base_pos = -front_len - middle_len - data_len - |
1380 | sizeof(m->footer); | 1380 | sizeof(m->footer); |
1381 | con->in_tag = CEPH_MSGR_TAG_READY; | 1381 | con->in_tag = CEPH_MSGR_TAG_READY; |
1382 | con->in_seq++; | ||
1382 | return 0; | 1383 | return 0; |
1383 | } | 1384 | } |
1384 | if (IS_ERR(con->in_msg)) { | 1385 | if (IS_ERR(con->in_msg)) { |
@@ -2030,6 +2031,7 @@ void ceph_con_revoke_message(struct ceph_connection *con, struct ceph_msg *msg) | |||
2030 | ceph_msg_put(con->in_msg); | 2031 | ceph_msg_put(con->in_msg); |
2031 | con->in_msg = NULL; | 2032 | con->in_msg = NULL; |
2032 | con->in_tag = CEPH_MSGR_TAG_READY; | 2033 | con->in_tag = CEPH_MSGR_TAG_READY; |
2034 | con->in_seq++; | ||
2033 | } else { | 2035 | } else { |
2034 | dout("con_revoke_pages %p msg %p pages %p no-op\n", | 2036 | dout("con_revoke_pages %p msg %p pages %p no-op\n", |
2035 | con, con->in_msg, msg); | 2037 | con, con->in_msg, msg); |