Subject: [PATCH net 0/4] rxrpc: Miscellaneous fixes

From: David Howells <[email-masked]>
Date: Fri, 2 Feb 2024 15:19:12 +0000

Here some miscellaneous fixes for AF_RXRPC:

 (1) The zero serial number has a special meaning in an ACK packet serial
     reference, so skip it when assigning serial numbers to transmitted
     packets.

 (2) Don't set the reference serial number in a delayed ACK as the ACK
     cannot be used for RTT calculation.

 (3) Don't emit a DUP ACK response to a PING RESPONSE ACK coming back to a
     call that completed in the meantime.

 (4) Fix the counting of acks and nacks in ACK packet to better drive
     congestion management.  We want to know if there have been new
     acks/nacks since the last ACK packet, not that there are still
     acks/nacks.  This is more complicated as we have to save the old SACK
     table and compare it.

David

---
The patches can be found here also:

	http://git.kernel.org/cgit/linux/kernel/git/dhowells/linux-fs.git/log/?h=rxrpc-fixes

David Howells (4):
  rxrpc: Fix generation of serial numbers to skip zero
  rxrpc: Fix delayed ACKs to not set the reference serial number
  rxrpc: Fix response to PING RESPONSE ACKs to a dead call
  rxrpc: Fix counting of new acks and nacks

 include/trace/events/rxrpc.h |   8 ++-
 net/rxrpc/ar-internal.h      |  37 ++++++++---
 net/rxrpc/call_event.c       |  12 ++--
 net/rxrpc/call_object.c      |   1 +
 net/rxrpc/conn_event.c       |  10 ++-
 net/rxrpc/input.c            | 115 +++++++++++++++++++++++++++++------
 net/rxrpc/output.c           |   8 +--
 net/rxrpc/proc.c             |   2 +-
 net/rxrpc/rxkad.c            |   4 +-
 9 files changed, 154 insertions(+), 43 deletions(-)