diff options
author | Chuck Lever | 2017-02-08 23:00:51 +0100 |
---|---|---|
committer | Anna Schumaker | 2017-02-10 20:02:37 +0100 |
commit | b977b644ccf821ab1269582f7efe1d0d85faa1f6 (patch) | |
tree | 9c2f0a3512ea55bfacf9f1ef6926c1f964a16444 /include/linux/lockd | |
parent | xprtrdma: Refactor management of mw_list field (diff) | |
download | kernel-qcow2-linux-b977b644ccf821ab1269582f7efe1d0d85faa1f6.tar.gz kernel-qcow2-linux-b977b644ccf821ab1269582f7efe1d0d85faa1f6.tar.xz kernel-qcow2-linux-b977b644ccf821ab1269582f7efe1d0d85faa1f6.zip |
sunrpc: Allow xprt->ops->timer method to sleep
The transport lock is needed to protect the xprt_adjust_cwnd() call
in xs_udp_timer, but it is not necessary for accessing the
rq_reply_bytes_recvd or tk_status fields. It is correct to sublimate
the lock into UDP's xs_udp_timer method, where it is required.
The ->timer method has to take the transport lock if needed, but it
can now sleep safely, or even call back into the RPC scheduler.
This is more a clean-up than a fix, but the "issue" was introduced
by my transport switch patches back in 2005.
Fixes: 46c0ee8bc4ad ("RPC: separate xprt_timer implementations")
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'include/linux/lockd')
0 files changed, 0 insertions, 0 deletions