[PATCH net 0/6] rxrpc: Leak fixes

David Howells dhowells at redhat.com
Fri May 20 09:33:41 PDT 2022


Here are some fixes for AF_RXRPC:

 (1) Reenable IPv6 checksums on the UDP transport socket after the
     conversion to the UDP tunnel API disabled it.

 (2) Fix listen() allowing preallocation to overrun the prealloc buffer.

 (3) Prevent resending the request if we've seen the reply starting to
     arrive.

 (4) Fix accidental sharing of ACK state between transmission and
     reception.

 (5) Ignore ACKs in which ack.previousPacket regresses.  This indicates the
     highest DATA number so far seen, so should not be seen to go
     backwards.

 (6) Fix the determination of when to generate an IDLE-type ACK,
     simplifying it so that we generate one if we have more than two DATA
     packets that aren't hard-acked (consumed) or soft-acked (in the rx
     buffer, but could be discarded and re-requested).

The patches are tagged here:

	git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
	rxrpc-fixes-20220520

and can also be found on the following branch:

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

Tested-by: kafs-testing+fedora34_64checkkafs-build-495 at auristor.com

David
---
David Howells (6):
      rxrpc: Enable IPv6 checksums on transport socket
      rxrpc: Fix listen() setting the bar too high for the prealloc rings
      rxrpc: Don't try to resend the request if we're receiving the reply
      rxrpc: Fix overlapping ACK accounting
      rxrpc: Don't let ack.previousPacket regress
      rxrpc: Fix decision on when to generate an IDLE ACK


 include/trace/events/rxrpc.h |  2 +-
 net/rxrpc/ar-internal.h      | 13 +++++++------
 net/rxrpc/call_event.c       |  3 ++-
 net/rxrpc/input.c            | 31 ++++++++++++++++++++-----------
 net/rxrpc/local_object.c     |  3 +++
 net/rxrpc/output.c           | 20 ++++++++++++--------
 net/rxrpc/recvmsg.c          |  8 +++-----
 net/rxrpc/sysctl.c           |  4 ++--
 8 files changed, 50 insertions(+), 34 deletions(-)





More information about the linux-afs mailing list