Lines Matching refs:priv
67 struct pcap_rdmasniff *priv = handle->priv; in rdmasniff_stats() local
69 stat->ps_recv = priv->packets_recv; in rdmasniff_stats()
79 struct pcap_rdmasniff *priv = handle->priv; in rdmasniff_cleanup() local
81 ibv_dereg_mr(priv->mr); in rdmasniff_cleanup()
82 ibv_destroy_flow(priv->flow); in rdmasniff_cleanup()
83 ibv_destroy_qp(priv->qp); in rdmasniff_cleanup()
84 ibv_destroy_cq(priv->cq); in rdmasniff_cleanup()
85 ibv_dealloc_pd(priv->pd); in rdmasniff_cleanup()
86 ibv_destroy_comp_channel(priv->channel); in rdmasniff_cleanup()
87 ibv_close_device(priv->context); in rdmasniff_cleanup()
88 free(priv->oneshot_buffer); in rdmasniff_cleanup()
96 struct pcap_rdmasniff *priv = handle->priv; in rdmasniff_post_recv() local
102 sg_entry.lkey = priv->mr->lkey; in rdmasniff_post_recv()
109 ibv_post_recv(priv->qp, &wr, &bad_wr); in rdmasniff_post_recv()
115 struct pcap_rdmasniff *priv = handle->priv; in rdmasniff_read() local
123 if (!priv->cq_event) { in rdmasniff_read()
124 while (ibv_get_cq_event(priv->channel, &ev_cq, &ev_ctx) < 0) { in rdmasniff_read()
133 ibv_ack_cq_events(priv->cq, 1); in rdmasniff_read()
134 ibv_req_notify_cq(priv->cq, 0); in rdmasniff_read()
135 priv->cq_event = 1; in rdmasniff_read()
154 if (ibv_poll_cq(priv->cq, 1, &wc) != 1) { in rdmasniff_read()
155 priv->cq_event = 0; in rdmasniff_read()
175 ++priv->packets_recv; in rdmasniff_read()
195 struct pcap_rdmasniff *priv = handle->priv; in rdmasniff_oneshot() local
198 memcpy(priv->oneshot_buffer, bytes, h->caplen); in rdmasniff_oneshot()
199 *sp->pkt = priv->oneshot_buffer; in rdmasniff_oneshot()
205 struct pcap_rdmasniff *priv = handle->priv; in rdmasniff_activate() local
212 priv->context = ibv_open_device(priv->rdma_device); in rdmasniff_activate()
213 if (!priv->context) { in rdmasniff_activate()
219 priv->pd = ibv_alloc_pd(priv->context); in rdmasniff_activate()
220 if (!priv->pd) { in rdmasniff_activate()
226 priv->channel = ibv_create_comp_channel(priv->context); in rdmasniff_activate()
227 if (!priv->channel) { in rdmasniff_activate()
233 priv->cq = ibv_create_cq(priv->context, RDMASNIFF_NUM_RECEIVES, in rdmasniff_activate()
234 NULL, priv->channel, 0); in rdmasniff_activate()
235 if (!priv->cq) { in rdmasniff_activate()
241 ibv_req_notify_cq(priv->cq, 0); in rdmasniff_activate()
244 qp_init_attr.send_cq = qp_init_attr.recv_cq = priv->cq; in rdmasniff_activate()
248 priv->qp = ibv_create_qp(priv->pd, &qp_init_attr); in rdmasniff_activate()
249 if (!priv->qp) { in rdmasniff_activate()
257 qp_attr.port_num = priv->port_num; in rdmasniff_activate()
258 if (ibv_modify_qp(priv->qp, &qp_attr, IBV_QP_STATE | IBV_QP_PORT)) { in rdmasniff_activate()
266 if (ibv_modify_qp(priv->qp, &qp_attr, IBV_QP_STATE)) { in rdmasniff_activate()
275 flow_attr.port = priv->port_num; in rdmasniff_activate()
276 priv->flow = ibv_create_flow(priv->qp, &flow_attr); in rdmasniff_activate()
277 if (!priv->flow) { in rdmasniff_activate()
291 priv->oneshot_buffer = malloc(RDMASNIFF_RECEIVE_SIZE); in rdmasniff_activate()
292 if (!priv->oneshot_buffer) { in rdmasniff_activate()
298 priv->mr = ibv_reg_mr(priv->pd, handle->buffer, handle->bufsize, IBV_ACCESS_LOCAL_WRITE); in rdmasniff_activate()
299 if (!priv->mr) { in rdmasniff_activate()
310 if (!ibv_query_port(priv->context, priv->port_num, &port_attr) && in rdmasniff_activate()
330 handle->selectable_fd = priv->channel->fd; in rdmasniff_activate()
335 if (priv->mr) { in rdmasniff_activate()
336 ibv_dereg_mr(priv->mr); in rdmasniff_activate()
339 if (priv->flow) { in rdmasniff_activate()
340 ibv_destroy_flow(priv->flow); in rdmasniff_activate()
343 if (priv->qp) { in rdmasniff_activate()
344 ibv_destroy_qp(priv->qp); in rdmasniff_activate()
347 if (priv->cq) { in rdmasniff_activate()
348 ibv_destroy_cq(priv->cq); in rdmasniff_activate()
351 if (priv->channel) { in rdmasniff_activate()
352 ibv_destroy_comp_channel(priv->channel); in rdmasniff_activate()
355 if (priv->pd) { in rdmasniff_activate()
356 ibv_dealloc_pd(priv->pd); in rdmasniff_activate()
359 if (priv->context) { in rdmasniff_activate()
360 ibv_close_device(priv->context); in rdmasniff_activate()
363 if (priv->oneshot_buffer) { in rdmasniff_activate()
364 free(priv->oneshot_buffer); in rdmasniff_activate()
373 struct pcap_rdmasniff *priv; in rdmasniff_create() local
415 priv = p->priv; in rdmasniff_create()
416 priv->rdma_device = dev_list[i]; in rdmasniff_create()
417 priv->port_num = port_num; in rdmasniff_create()