mbox series

[net-next,0/7] rxrpc: Miscellaneous changes

Message ID 165306515409.34989.4713077338482294594.stgit@warthog.procyon.org.uk (mailing list archive)
Headers show
Series rxrpc: Miscellaneous changes | expand

Message

David Howells May 20, 2022, 4:45 p.m. UTC
Here are some miscellaneous changes for AF_RXRPC:

 (1) Allow the list of local endpoints to be viewed through /proc.

 (2) Switch to using refcount_t for refcounting.

 (3) Fix a locking issue found by lockdep.

 (4) Autogenerate tracing symbol enums from symbol->string maps to make it
     easier to keep them in sync.

 (5) Return an error to sendmsg() if a call it tried to set up failed.
     Because it failed at this point, no notification will be generated for
     recvmsg to pick up - but userspace still needs to know about the
     failure.

 (6) Fix the selection of abort codes generated by internal events.  In
     particular, rxrpc and kafs shouldn't be generating RX_USER_ABORT
     unless it's because userspace did something to cancel a call.

 (7) Adjust the interpretation and handling of certain ACK types to try and
     detect NAT changes causing a call to seem to start mid-flow from a
     different peer.

The patches are tagged here:

	git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
	rxrpc-next-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-next

Tested-by: kafs-testing+fedora34_64checkkafs-build-493@auristor.com

David
---
David Howells (7):
      rxrpc: Allow list of in-use local UDP endpoints to be viewed in /proc
      rxrpc: Use refcount_t rather than atomic_t
      rxrpc: Fix locking issue
      rxrpc: Automatically generate trace tag enums
      rxrpc: Return an error to sendmsg if call failed
      rxrpc, afs: Fix selection of abort codes
      afs: Adjust ACK interpretation to try and cope with NAT


 fs/afs/misc.c                |   5 +-
 fs/afs/rotate.c              |   4 +
 fs/afs/rxrpc.c               |   8 +-
 fs/afs/write.c               |   1 +
 fs/seq_file.c                |  32 +++++
 include/linux/list.h         |  10 ++
 include/linux/seq_file.h     |   4 +
 include/trace/events/rxrpc.h | 263 ++++++-----------------------------
 net/rxrpc/af_rxrpc.c         |   2 +-
 net/rxrpc/ar-internal.h      |  25 ++--
 net/rxrpc/call_accept.c      |  10 +-
 net/rxrpc/call_event.c       |   4 +-
 net/rxrpc/call_object.c      |  62 +++++----
 net/rxrpc/conn_client.c      |  30 ++--
 net/rxrpc/conn_object.c      |  51 +++----
 net/rxrpc/conn_service.c     |   8 +-
 net/rxrpc/input.c            |  31 ++++-
 net/rxrpc/local_object.c     |  68 ++++-----
 net/rxrpc/net_ns.c           |   7 +-
 net/rxrpc/peer_object.c      |  40 +++---
 net/rxrpc/proc.c             |  85 +++++++++--
 net/rxrpc/sendmsg.c          |   6 +
 net/rxrpc/skbuff.c           |   1 -
 23 files changed, 366 insertions(+), 391 deletions(-)