Skip to content

Commit deaa5c9

Browse files
chuckleveramschuma-ntap
authored andcommitted
SUNRPC: Address Kerberos performance/behavior regression
When using Kerberos with v4.20, I've observed frequent connection loss on heavy workloads. I traced it down to the client underrunning the GSS sequence number window -- NFS servers are required to drop the RPC with the low sequence number, and also drop the connection to signal that an RPC was dropped. Bisected to commit 918f3c1 ("SUNRPC: Improve latency for interactive tasks"). I've got a one-line workaround for this issue, which is easy to backport to v4.20 while a more permanent solution is being derived. Essentially, tk_owner-based sorting is disabled for RPCs that carry a GSS sequence number. Fixes: 918f3c1 ("SUNRPC: Improve latency for interactive ... ") Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
1 parent 97b78ae commit deaa5c9

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

net/sunrpc/xprt.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1178,7 +1178,7 @@ xprt_request_enqueue_transmit(struct rpc_task *task)
11781178
INIT_LIST_HEAD(&req->rq_xmit2);
11791179
goto out;
11801180
}
1181-
} else {
1181+
} else if (!req->rq_seqno) {
11821182
list_for_each_entry(pos, &xprt->xmit_queue, rq_xmit) {
11831183
if (pos->rq_task->tk_owner != task->tk_owner)
11841184
continue;

0 commit comments

Comments
 (0)