]> git.baikalelectronics.ru Git - kernel.git/commit
SUNRPC: receive buffer size estimation values almost never change
authorChuck Lever <chuck.lever@oracle.com>
Tue, 12 May 2020 21:13:01 +0000 (17:13 -0400)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Thu, 11 Jun 2020 17:33:47 +0000 (13:33 -0400)
commit947802bea75a43bed50d4a50196d94b7bc4dce67
tree6c41ff5ea252d629a3293b09822c7d19c3cd730b
parente2acab31197af0fd2907af291e9260a9a4c35ae0
SUNRPC: receive buffer size estimation values almost never change

Avoid unnecessary cache sloshing by placing the buffer size
estimation update logic behind an atomic bit flag.

The size of GSS information included in each wrapped Reply does
not change during the lifetime of a GSS context. Therefore, the
au_rslack and au_ralign fields need to be updated only once after
establishing a fresh GSS credential.

Thus a slack size update must occur after a cred is created,
duplicated, renewed, or expires. I'm not sure I have this exactly
right. A trace point is introduced to track updates to these
variables to enable troubleshooting the problem if I missed a spot.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
include/linux/sunrpc/auth.h
include/trace/events/rpcgss.h
net/sunrpc/auth_gss/auth_gss.c
net/sunrpc/xprtrdma/rpc_rdma.c