aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/rdma/device.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/rdma/device.c')
-rw-r--r--src/plugins/rdma/device.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/rdma/device.c b/src/plugins/rdma/device.c
index 4098d3c8bb2..09816644e72 100644
--- a/src/plugins/rdma/device.c
+++ b/src/plugins/rdma/device.c
@@ -268,11 +268,11 @@ rdma_rxq_init (vlib_main_t * vm, rdma_device_t * rd, u16 qid, u32 n_desc)
return clib_error_return_unix (0, "Create CQ Failed");
memset (&qpia, 0, sizeof (qpia));
- qpia.qp_type = IBV_QPT_RAW_PACKET;
qpia.send_cq = rxq->cq;
qpia.recv_cq = rxq->cq;
qpia.cap.max_recv_wr = n_desc;
qpia.cap.max_recv_sge = 1;
+ qpia.qp_type = IBV_QPT_RAW_PACKET;
if ((rxq->qp = ibv_create_qp (rd->pd, &qpia)) == 0)
return clib_error_return_unix (0, "Queue Pair create failed");
@@ -309,11 +309,12 @@ rdma_txq_init (vlib_main_t * vm, rdma_device_t * rd, u16 qid, u32 n_desc)
return clib_error_return_unix (0, "Create CQ Failed");
memset (&qpia, 0, sizeof (qpia));
- qpia.qp_type = IBV_QPT_RAW_PACKET;
qpia.send_cq = txq->cq;
qpia.recv_cq = txq->cq;
qpia.cap.max_send_wr = n_desc;
qpia.cap.max_send_sge = 1;
+ qpia.qp_type = IBV_QPT_RAW_PACKET;
+ qpia.sq_sig_all = 1;
if ((txq->qp = ibv_create_qp (rd->pd, &qpia)) == 0)
return clib_error_return_unix (0, "Queue Pair create failed");
@@ -430,7 +431,7 @@ rdma_create_if (vlib_main_t * vm, rdma_create_if_args_t * args)
pool_get_zero (rm->devices, rd);
rd->dev_instance = rd - rm->devices;
- rd->per_interface_next_index = ~0;
+ rd->per_interface_next_index = VNET_DEVICE_INPUT_NEXT_ETHERNET_INPUT;
rd->name = vec_dup (args->name);
/* check if device exist and if it is bound to mlx5_core */