diff options
| author | Chuck Lever <[email protected]> | 2016-11-29 15:52:40 +0000 |
|---|---|---|
| committer | Anna Schumaker <[email protected]> | 2016-11-29 21:45:44 +0000 |
| commit | 109b88ab9d78f76b3f6f42155cac2241f2ad2e31 (patch) | |
| tree | 8beefc083678dbf7e7b9b74af402181c0fe06a44 /net/unix/af_unix.c | |
| parent | SUNRPC: Proper metric accounting when RPC is not transmitted (diff) | |
| download | kernel-109b88ab9d78f76b3f6f42155cac2241f2ad2e31.tar.gz kernel-109b88ab9d78f76b3f6f42155cac2241f2ad2e31.zip | |
xprtrdma: Address coverity complaint about wait_for_completion()
> ** CID 114101: Error handling issues (CHECKED_RETURN)
> /net/sunrpc/xprtrdma/verbs.c: 355 in rpcrdma_create_id()
Commit 5675add36e76 ("RPC/RDMA: harden connection logic against
missing/late rdma_cm upcalls.") replaced wait_for_completion() calls
with these two call sites.
The original wait_for_completion() calls were added in the initial
commit of verbs.c, which was commit c56c65fb67d6 ("RPCRDMA: rpc rdma
verbs interface implementation"), but these returned void.
rpcrdma_create_id() is called by the RDMA connect worker, which
probably won't ever be interrupted. It is also called by
rpcrdma_ia_open which is in the synchronous mount path, and ^C is
possible there.
Add a bit of logic at those two call sites to return if the waits
return ERESTARTSYS.
Signed-off-by: Chuck Lever <[email protected]>
Signed-off-by: Anna Schumaker <[email protected]>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions
