summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs/smb/server/transport_rdma.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/smb/server/transport_rdma.c b/fs/smb/server/transport_rdma.c
index 8ca75afe082c..9ccc0930e99e 100644
--- a/fs/smb/server/transport_rdma.c
+++ b/fs/smb/server/transport_rdma.c
@@ -1639,8 +1639,7 @@ static int smb_direct_cm_handler(struct rdma_cm_id *cm_id,
static void smb_direct_qpair_handler(struct ib_event *event, void *context)
{
- struct smb_direct_transport *t = context;
- struct smbdirect_socket *sc = &t->socket;
+ struct smbdirect_socket *sc = context;
ksmbd_debug(RDMA, "Received QP event. cm_id=%p, event=%s (%d)\n",
sc->rdma.cm_id, ib_event_msg(event->event), event->event);
@@ -1980,7 +1979,7 @@ static int smb_direct_create_qpair(struct smb_direct_transport *t,
return ret;
}
- sc->ib.send_cq = ib_alloc_cq(sc->ib.dev, t,
+ sc->ib.send_cq = ib_alloc_cq(sc->ib.dev, sc,
sp->send_credit_target + cap->max_rdma_ctxs,
0, IB_POLL_WORKQUEUE);
if (IS_ERR(sc->ib.send_cq)) {
@@ -1990,7 +1989,7 @@ static int smb_direct_create_qpair(struct smb_direct_transport *t,
goto err;
}
- sc->ib.recv_cq = ib_alloc_cq(sc->ib.dev, t,
+ sc->ib.recv_cq = ib_alloc_cq(sc->ib.dev, sc,
sp->recv_credit_max, 0, IB_POLL_WORKQUEUE);
if (IS_ERR(sc->ib.recv_cq)) {
pr_err("Can't create RDMA recv CQ\n");
@@ -2001,7 +2000,7 @@ static int smb_direct_create_qpair(struct smb_direct_transport *t,
memset(&qp_attr, 0, sizeof(qp_attr));
qp_attr.event_handler = smb_direct_qpair_handler;
- qp_attr.qp_context = t;
+ qp_attr.qp_context = sc;
qp_attr.cap = *cap;
qp_attr.sq_sig_type = IB_SIGNAL_REQ_WR;
qp_attr.qp_type = IB_QPT_RC;