Merge tag 'rxrpc-next-20180801' of git://git.kernel.org/pub/scm/linux/kernel/git...
commitb69ab96ab13ddaa28a506a2433ae5b12669615e8
authorDavid S. Miller <davem@davemloft.net>
Wed, 1 Aug 2018 18:50:55 +0000 (1 11:50 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 1 Aug 2018 18:50:55 +0000 (1 11:50 -0700)
treeee82091574ed697c8be862aec37b3ebbcc8ce4c7
parent90d4c5bb98bf66653333266917edf0e16ccd35f9
parentd0b35a42031a3107a5735e0d0a605a68f530a96b
Merge tag 'rxrpc-next-20180801' of git://git./linux/kernel/git/dhowells/linux-fs

David Howells says:

====================
rxrpc: Development

Here are some patches that add some more tracepoints to AF_RXRPC and fix
some issues therein.  The most significant points are:

 (1) Display the call timeout information in /proc/net/rxrpc/calls.

 (2) Save the call's debug_id in the rxrpc_channel struct so that it can be
     used in traces after the rxrpc_call struct has been destroyed.

 (3) Increase the size of the kAFS Rx window from 32 to 63 to be about the
     same as the Auristor server.

 (4) Propose the terminal ACK for a client call after it has received all
     its data to be transmitted after a short interval so that it will get
     transmitted if not first superseded by a new call on the same channel.

 (5) Flush ACKs during the data reception if we detect that we've run out
     of data.[*]

 (6) Trace successful packet transmission and softirq to process context
     socket notification.

[*] Note that on a uncontended gigabit network, rxrpc runs in to trouble
    with ACK packets getting batched together (up to ~32 at a time)
    somewhere between the IP transmit queue on the client and the ethernet
    receive queue on the server.

    I can see the kernel afs filesystem client and Auristor userspace
    server stalling occasionally on a 512MB single read.  Sticking
    tracepoints in the network driver at either end seems to show that,
    although the ACK transmissions made by the client are reasonably spaced
    timewise, the received ACKs come in batches from the network card on
    the server.

    I'm not sure what, if anything, can be done about this.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>