Lines Matching defs:pkt
418 struct rxe_pkt_info *pkt)
431 pkt->paylen = paylen;
434 skb = rxe_init_packet(rxe, av, paylen, pkt);
440 (pkt->mask & RXE_END_MASK) &&
441 ((pkt->mask & (RXE_SEND_MASK)) ||
442 (pkt->mask & (RXE_WRITE_MASK | RXE_IMMDT_MASK)) ==
445 qp_num = (pkt->mask & RXE_DETH_MASK) ? ibwr->wr.ud.remote_qpn :
448 ack_req = ((pkt->mask & RXE_END_MASK) ||
453 bth_init(pkt, pkt->opcode, solicited, 0, pad, IB_DEFAULT_PKEY_FULL, qp_num,
454 ack_req, pkt->psn);
457 if (pkt->mask & RXE_RETH_MASK) {
458 if (pkt->mask & RXE_FETH_MASK)
459 reth_set_rkey(pkt, ibwr->wr.flush.rkey);
461 reth_set_rkey(pkt, ibwr->wr.rdma.rkey);
462 reth_set_va(pkt, wqe->iova);
463 reth_set_len(pkt, wqe->dma.resid);
467 if (pkt->mask & RXE_FETH_MASK)
468 feth_init(pkt, ibwr->wr.flush.type, ibwr->wr.flush.level);
470 if (pkt->mask & RXE_IMMDT_MASK)
471 immdt_set_imm(pkt, ibwr->ex.imm_data);
473 if (pkt->mask & RXE_IETH_MASK)
474 ieth_set_rkey(pkt, ibwr->ex.invalidate_rkey);
476 if (pkt->mask & RXE_ATMETH_MASK) {
477 atmeth_set_va(pkt, wqe->iova);
479 atmeth_set_swap_add(pkt, ibwr->wr.atomic.swap);
480 atmeth_set_comp(pkt, ibwr->wr.atomic.compare_add);
482 atmeth_set_swap_add(pkt, ibwr->wr.atomic.compare_add);
484 atmeth_set_rkey(pkt, ibwr->wr.atomic.rkey);
487 if (pkt->mask & RXE_DETH_MASK) {
489 deth_set_qkey(pkt, GSI_QKEY);
491 deth_set_qkey(pkt, ibwr->wr.ud.remote_qkey);
492 deth_set_sqp(pkt, qp->ibqp.qp_num);
499 struct rxe_send_wqe *wqe, struct rxe_pkt_info *pkt,
504 err = rxe_prepare(av, pkt, skb);
508 if (pkt->mask & RXE_WRITE_OR_SEND_MASK) {
512 memcpy(payload_addr(pkt), tmp, payload);
518 payload_addr(pkt), payload,
523 if (bth_pad(pkt)) {
524 u8 *pad = payload_addr(pkt) + payload;
526 memset(pad, 0, bth_pad(pkt));
528 } else if (pkt->mask & RXE_FLUSH_MASK) {
533 if (pkt->mask & RXE_ATOMIC_WRITE_MASK) {
534 memcpy(payload_addr(pkt), wqe->dma.atomic_wr, payload);
543 struct rxe_pkt_info *pkt)
545 if (pkt->mask & RXE_END_MASK) {
555 struct rxe_pkt_info *pkt,
565 if (pkt->mask & RXE_START_MASK) {
570 if (pkt->mask & RXE_READ_MASK)
600 static void update_state(struct rxe_qp *qp, struct rxe_pkt_info *pkt)
602 qp->req.opcode = pkt->opcode;
604 if (pkt->mask & RXE_END_MASK)
670 struct rxe_pkt_info pkt;
795 pkt.rxe = rxe;
796 pkt.opcode = opcode;
797 pkt.qp = qp;
798 pkt.psn = qp->req.psn;
799 pkt.mask = rxe_opcode[opcode].mask;
800 pkt.wqe = wqe;
805 av = rxe_get_av(&pkt, &ah);
812 skb = init_req_packet(qp, av, wqe, opcode, payload, &pkt);
821 err = finish_packet(qp, av, wqe, &pkt, skb, payload);
838 update_wqe_state(qp, wqe, &pkt);
839 update_wqe_psn(qp, wqe, &pkt, payload);
841 err = rxe_xmit_packet(qp, &pkt, skb);
862 update_state(qp, &pkt);