Lines Matching refs:sqe
652 struct siw_sqe *sqe)
655 void *kbuf = &sqe->sge[1];
658 sqe->sge[0].laddr = (uintptr_t)kbuf;
659 sqe->sge[0].lkey = 0;
677 sqe->sge[0].length = max(bytes, 0);
678 sqe->num_sge = bytes > 0 ? 1 : 0;
690 struct siw_sqe sqe = {};
694 sqe.opcode = SIW_OP_WRITE;
697 sqe.opcode = SIW_OP_READ;
700 sqe.opcode = SIW_OP_READ_LOCAL_INV;
703 sqe.opcode = SIW_OP_SEND;
706 sqe.opcode = SIW_OP_SEND_WITH_IMM;
709 sqe.opcode = SIW_OP_SEND_REMOTE_INV;
712 sqe.opcode = SIW_OP_INVAL_STAG;
715 sqe.opcode = SIW_OP_REG_MR;
722 sqe.id = wr->wr_id;
723 rv = siw_sqe_complete(qp, &sqe, 0,
827 struct siw_sqe *sqe = &qp->sendq[idx];
829 if (sqe->flags) {
839 sqe->id = wr->wr_id;
843 sqe->flags |= SIW_WQE_SIGNALLED;
846 sqe->flags |= SIW_WQE_READ_FENCE;
852 sqe->flags |= SIW_WQE_SOLICITED;
855 siw_copy_sgl(wr->sg_list, sqe->sge,
857 sqe->num_sge = wr->num_sge;
859 rv = siw_copy_inline_sgl(wr, sqe);
864 sqe->flags |= SIW_WQE_INLINE;
865 sqe->num_sge = 1;
868 sqe->opcode = SIW_OP_SEND;
870 sqe->opcode = SIW_OP_SEND_REMOTE_INV;
871 sqe->rkey = wr->ex.invalidate_rkey;
888 siw_copy_sgl(wr->sg_list, &sqe->sge[0], 1);
892 sqe->raddr = rdma_wr(wr)->remote_addr;
893 sqe->rkey = rdma_wr(wr)->rkey;
894 sqe->num_sge = 1;
897 sqe->opcode = SIW_OP_READ;
899 sqe->opcode = SIW_OP_READ_LOCAL_INV;
904 siw_copy_sgl(wr->sg_list, &sqe->sge[0],
906 sqe->num_sge = wr->num_sge;
908 rv = siw_copy_inline_sgl(wr, sqe);
913 sqe->flags |= SIW_WQE_INLINE;
914 sqe->num_sge = 1;
916 sqe->raddr = rdma_wr(wr)->remote_addr;
917 sqe->rkey = rdma_wr(wr)->rkey;
918 sqe->opcode = SIW_OP_WRITE;
922 sqe->base_mr = (uintptr_t)reg_wr(wr)->mr;
923 sqe->rkey = reg_wr(wr)->key;
924 sqe->access = reg_wr(wr)->access & IWARP_ACCESS_MASK;
925 sqe->opcode = SIW_OP_REG_MR;
929 sqe->rkey = wr->ex.invalidate_rkey;
930 sqe->opcode = SIW_OP_INVAL_STAG;
940 sqe->opcode, sqe->flags,
941 (void *)(uintptr_t)sqe->id);
948 sqe->flags |= SIW_WQE_VALID;