diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2017-10-30 16:21:49 -0400 |
---|---|---|
committer | Anna Schumaker <Anna.Schumaker@Netapp.com> | 2017-11-17 16:43:42 -0500 |
commit | a4699f5647f369e8ab7ec56b7cd98580c933c3f3 (patch) | |
tree | a84aa74af6a3aa01254238273e91f3739edc8940 /net/sunrpc | |
parent | 212bf41d88c06afc23e03f9b274eebf1e8dba197 (diff) |
xprtrdma: Put Send CQ in IB_POLL_WORKQUEUE mode
Lift the Send and LocalInv completion handlers out of soft IRQ mode
to make room for other work. Also, move the Send CQ to a different
CPU than the CPU where the Receive CQ is running, for improved
scalability.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Devesh Sharma <devesh.sharma@broadcom.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'net/sunrpc')
-rw-r--r-- | net/sunrpc/xprtrdma/verbs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sunrpc/xprtrdma/verbs.c b/net/sunrpc/xprtrdma/verbs.c index 22128a81da63..4cfa893def2c 100644 --- a/net/sunrpc/xprtrdma/verbs.c +++ b/net/sunrpc/xprtrdma/verbs.c | |||
@@ -558,7 +558,7 @@ rpcrdma_ep_create(struct rpcrdma_ep *ep, struct rpcrdma_ia *ia, | |||
558 | 558 | ||
559 | sendcq = ib_alloc_cq(ia->ri_device, NULL, | 559 | sendcq = ib_alloc_cq(ia->ri_device, NULL, |
560 | ep->rep_attr.cap.max_send_wr + 1, | 560 | ep->rep_attr.cap.max_send_wr + 1, |
561 | 0, IB_POLL_SOFTIRQ); | 561 | 1, IB_POLL_WORKQUEUE); |
562 | if (IS_ERR(sendcq)) { | 562 | if (IS_ERR(sendcq)) { |
563 | rc = PTR_ERR(sendcq); | 563 | rc = PTR_ERR(sendcq); |
564 | dprintk("RPC: %s: failed to create send CQ: %i\n", | 564 | dprintk("RPC: %s: failed to create send CQ: %i\n", |