diff options
author | David Howells <dhowells@redhat.com> | 2022-05-21 09:03:24 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-05-22 21:30:53 +0100 |
commit | 81524b6312535897707f2942695da1d359a5e56b (patch) | |
tree | fcd07bf0d8f48e2e0df44cf25b5ee0368a73ef31 /net/rxrpc/output.c | |
parent | 8940ba3cfe4841928777fd45eaa92051522c7f0c (diff) | |
download | lwn-81524b6312535897707f2942695da1d359a5e56b.tar.gz lwn-81524b6312535897707f2942695da1d359a5e56b.zip |
rxrpc: Don't let ack.previousPacket regress
The previousPacket field in the rx ACK packet should never go backwards -
it's now the highest DATA sequence number received, not the last on
received (it used to be used for out of sequence detection).
Fixes: 248f219cb8bc ("rxrpc: Rewrite the data and ack handling code")
Signed-off-by: David Howells <dhowells@redhat.com>
cc: Marc Dionne <marc.dionne@auristor.com>
cc: linux-afs@lists.infradead.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rxrpc/output.c')
-rw-r--r-- | net/rxrpc/output.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/rxrpc/output.c b/net/rxrpc/output.c index a45c83f22236..46aae9b7006f 100644 --- a/net/rxrpc/output.c +++ b/net/rxrpc/output.c @@ -89,7 +89,7 @@ static size_t rxrpc_fill_out_ack(struct rxrpc_connection *conn, pkt->ack.bufferSpace = htons(8); pkt->ack.maxSkew = htons(0); pkt->ack.firstPacket = htonl(hard_ack + 1); - pkt->ack.previousPacket = htonl(call->ackr_prev_seq); + pkt->ack.previousPacket = htonl(call->ackr_highest_seq); pkt->ack.serial = htonl(serial); pkt->ack.reason = reason; pkt->ack.nAcks = top - hard_ack; |