diff options
author | Sage Weil <sage@newdream.net> | 2010-04-02 16:07:19 -0700 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2010-04-02 16:07:19 -0700 |
commit | 0e0d5e0c4bb0476d53a43bfc87d03a25ec4b5579 (patch) | |
tree | 66013a33ad1f46b258d55289adf12cac463d43f9 /fs/ceph | |
parent | 819ccbfa448403992ceafc05d6d7097aaa74d4c3 (diff) | |
download | op-kernel-dev-0e0d5e0c4bb0476d53a43bfc87d03a25ec4b5579.zip op-kernel-dev-0e0d5e0c4bb0476d53a43bfc87d03a25ec4b5579.tar.gz |
ceph: fix ack counter reset on connection reset
If in_seq_acked isn't reset along with in_seq, we don't ack received
messages until we reach the old count, consuming gobs memory on the other
end of the connection and introducing a large delay when those messages
are eventually deleted.
Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph')
-rw-r--r-- | fs/ceph/messenger.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ceph/messenger.c b/fs/ceph/messenger.c index a32f0f8..f35b494 100644 --- a/fs/ceph/messenger.c +++ b/fs/ceph/messenger.c @@ -332,6 +332,7 @@ static void reset_connection(struct ceph_connection *con) con->out_msg = NULL; } con->in_seq = 0; + con->in_seq_acked = 0; } /* |