SUNRPC: Mitigate cond_resched() in xprt_transmit()
authorChuck Lever <chuck.lever@oracle.com>
Wed, 8 Jul 2020 20:09:53 +0000 (16:09 -0400)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Mon, 21 Sep 2020 14:21:09 +0000 (10:21 -0400)
commit6f9f17287e78e5049931af2037b15b26d134a32a
tree61834c2cd426dc876c1cb267a2d09a0a431194d5
parentdb0a86c4266ac36769f54e2ce33fff0300c9bc00
SUNRPC: Mitigate cond_resched() in xprt_transmit()

The original purpose of this expensive call is to prevent a long
queue of requests from blocking other work.

The cond_resched() call is unnecessary after just a single send
operation.

For longer queues, instead of invoking the kernel scheduler, simply
release the transport send lock and return to the RPC scheduler.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
net/sunrpc/xprt.c