netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/8] rxrpc: Overhaul call refcounting
@ 2016-09-07 15:22 David Howells
  2016-09-07 15:22 ` [PATCH net-next 1/8] rxrpc: Whitespace cleanup David Howells
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: David Howells @ 2016-09-07 15:22 UTC (permalink / raw)
  To: netdev; +Cc: dhowells, linux-afs, linux-kernel


Here's a set of mostly small patches leading up to one big one.

The big patch at the end of the series overhauls how rxrpc_call refcounting
is handled, making it more sane so that calls bound to user IDs are _only_
released from socket operations or kernel API functions.  Further, the
patch stops calls from holding refs on their parent socket - which can
prevent the socket from being cleaned up.

The second largest patch improves the call tracking tracepoint by providing
extra information about the situation in which gets and puts occur.  This
allows distinctions to be drawn between refs held by the socket user ID
tree, refs held by the work queue (to be implemented by a future patch) and
other refs.

The other patches include a couple of cleanups and some simple alterations
to avoid NULL pointer dereferences in the big patch.

The patches can be found here also (non-terminally on the branch):

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

Tagged thusly:

	git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
	rxrpc-rewrite-20160907-1

David
---
David Howells (8):
      rxrpc: Whitespace cleanup
      rxrpc: Delete unused rxrpc_kernel_free_skb()
      rxrpc: Improve the call tracking tracepoint
      rxrpc: Use call->peer rather than call->conn->params.peer
      rxrpc: Cache the security index in the rxrpc_call struct
      rxrpc: Pass the connection pointer to rxrpc_post_packet_to_call()
      rxrpc: Use rxrpc_is_service_call() rather than rxrpc_conn_is_service()
      rxrpc: Calls shouldn't hold socket refs


 include/trace/events/rxrpc.h |   11 --
 net/rxrpc/af_rxrpc.c         |    6 -
 net/rxrpc/ar-internal.h      |   41 ++++--
 net/rxrpc/call_accept.c      |   63 +++-------
 net/rxrpc/call_event.c       |   74 +++++------
 net/rxrpc/call_object.c      |  277 +++++++++++++++++++-----------------------
 net/rxrpc/conn_client.c      |    3 
 net/rxrpc/input.c            |   39 +++---
 net/rxrpc/output.c           |  145 ++++++++++++++++++++++
 net/rxrpc/proc.c             |    4 -
 net/rxrpc/recvmsg.c          |   47 ++-----
 net/rxrpc/sendmsg.c          |    6 -
 net/rxrpc/skbuff.c           |   16 --
 net/rxrpc/sysctl.c           |    8 -
 14 files changed, 393 insertions(+), 347 deletions(-)

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2016-09-08  0:22 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-07 15:22 [PATCH net-next 0/8] rxrpc: Overhaul call refcounting David Howells
2016-09-07 15:22 ` [PATCH net-next 1/8] rxrpc: Whitespace cleanup David Howells
2016-09-07 15:22 ` [PATCH net-next 2/8] rxrpc: Delete unused rxrpc_kernel_free_skb() David Howells
2016-09-07 15:22 ` [PATCH net-next 3/8] rxrpc: Improve the call tracking tracepoint David Howells
2016-09-07 15:22 ` [PATCH net-next 4/8] rxrpc: Use call->peer rather than call->conn->params.peer David Howells
2016-09-07 15:23 ` [PATCH net-next 5/8] rxrpc: Cache the security index in the rxrpc_call struct David Howells
2016-09-07 15:23 ` [PATCH net-next 6/8] rxrpc: Pass the connection pointer to rxrpc_post_packet_to_call() David Howells
2016-09-07 15:23 ` [PATCH net-next 7/8] rxrpc: Use rxrpc_is_service_call() rather than rxrpc_conn_is_service() David Howells
2016-09-07 15:23 ` [PATCH net-next 8/8] rxrpc: Calls shouldn't hold socket refs David Howells
2016-09-08  0:22 ` [PATCH net-next 0/8] rxrpc: Overhaul call refcounting David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).