• Home
  • Raw
  • Download

Lines Matching refs:sq

96 	return get_wqe(qp, qp->sq.offset + (n << MLX5_IB_SQ_STRIDE));  in mlx5_get_send_wqe()
121 struct mlx5_ib_wq *wq = send ? &qp->sq : &qp->rq; in mlx5_ib_read_user_wqe()
360 qp->sq.wqe_cnt = wq_size / MLX5_SEND_WQE_BB; in calc_sq_size()
361 if (qp->sq.wqe_cnt > (1 << MLX5_CAP_GEN(dev->mdev, log_max_qp_sz))) { in calc_sq_size()
363 qp->sq.wqe_cnt, in calc_sq_size()
367 qp->sq.wqe_shift = ilog2(MLX5_SEND_WQE_BB); in calc_sq_size()
368 qp->sq.max_gs = attr->cap.max_send_sge; in calc_sq_size()
369 qp->sq.max_post = wq_size / wqe_size; in calc_sq_size()
370 attr->cap.max_send_wr = qp->sq.max_post; in calc_sq_size()
379 int desc_sz = 1 << qp->sq.wqe_shift; in set_user_buf_size()
393 qp->sq.wqe_cnt = ucmd->sq_wqe_count; in set_user_buf_size()
395 if (qp->sq.wqe_cnt > (1 << MLX5_CAP_GEN(dev->mdev, log_max_qp_sz))) { in set_user_buf_size()
397 qp->sq.wqe_cnt, in set_user_buf_size()
403 (qp->sq.wqe_cnt << 6); in set_user_buf_size()
646 qp->sq.wqe_shift = ilog2(MLX5_SEND_WQE_BB); in create_user_qp()
647 qp->sq.offset = qp->rq.wqe_cnt << qp->rq.wqe_shift; in create_user_qp()
768 qp->sq.offset = qp->rq.wqe_cnt << qp->rq.wqe_shift; in create_kernel_qp()
777 qp->sq.qend = mlx5_get_send_wqe(qp, qp->sq.wqe_cnt); in create_kernel_qp()
799 qp->sq.wrid = kmalloc(qp->sq.wqe_cnt * sizeof(*qp->sq.wrid), GFP_KERNEL); in create_kernel_qp()
800 qp->sq.wr_data = kmalloc(qp->sq.wqe_cnt * sizeof(*qp->sq.wr_data), GFP_KERNEL); in create_kernel_qp()
802 qp->sq.w_list = kmalloc(qp->sq.wqe_cnt * sizeof(*qp->sq.w_list), GFP_KERNEL); in create_kernel_qp()
803 qp->sq.wqe_head = kmalloc(qp->sq.wqe_cnt * sizeof(*qp->sq.wqe_head), GFP_KERNEL); in create_kernel_qp()
805 if (!qp->sq.wrid || !qp->sq.wr_data || !qp->rq.wrid || in create_kernel_qp()
806 !qp->sq.w_list || !qp->sq.wqe_head) { in create_kernel_qp()
816 kfree(qp->sq.wqe_head); in create_kernel_qp()
817 kfree(qp->sq.w_list); in create_kernel_qp()
818 kfree(qp->sq.wrid); in create_kernel_qp()
819 kfree(qp->sq.wr_data); in create_kernel_qp()
836 kfree(qp->sq.wqe_head); in destroy_qp_kernel()
837 kfree(qp->sq.w_list); in destroy_qp_kernel()
838 kfree(qp->sq.wrid); in destroy_qp_kernel()
839 kfree(qp->sq.wr_data); in destroy_qp_kernel()
879 spin_lock_init(&qp->sq.lock); in create_qp_common()
992 if (qp->sq.wqe_cnt) in create_qp_common()
993 in->ctx.sq_crq_size |= cpu_to_be16(ilog2(qp->sq.wqe_cnt) << 11); in create_qp_common()
1776 qp->sq.head = 0; in __mlx5_ib_modify_qp()
1777 qp->sq.tail = 0; in __mlx5_ib_modify_qp()
1778 qp->sq.cur_post = 0; in __mlx5_ib_modify_qp()
1779 qp->sq.last_poll = 0; in __mlx5_ib_modify_qp()
2111 void *qend = qp->sq.qend; in set_data_inl_seg()
2338 if (unlikely((*seg == qp->sq.qend))) in set_sig_data_segment()
2348 if (unlikely((*seg == qp->sq.qend))) in set_sig_data_segment()
2419 if (unlikely((*seg == qp->sq.qend))) in set_sig_umr_wr()
2425 if (unlikely((*seg == qp->sq.qend))) in set_sig_umr_wr()
2478 if (unlikely((*seg == qp->sq.qend))) in set_reg_wr()
2484 if (unlikely((*seg == qp->sq.qend))) in set_reg_wr()
2499 if (unlikely((*seg == qp->sq.qend))) in set_linv_wr()
2504 if (unlikely((*seg == qp->sq.qend))) in set_linv_wr()
2518 tidx = (tidx + 1) & (qp->sq.wqe_cnt - 1); in dump_wqe()
2541 if (unlikely(src == qp->sq.qend)) in mlx5_bf_copy()
2571 if (unlikely(mlx5_wq_overflow(&qp->sq, nreq, qp->ibqp.send_cq))) { in begin_wqe()
2576 *idx = qp->sq.cur_post & (qp->sq.wqe_cnt - 1); in begin_wqe()
2601 ctrl->opmod_idx_opcode = cpu_to_be32(((u32)(qp->sq.cur_post) << 8) | in finish_wqe()
2609 qp->sq.wrid[idx] = wr_id; in finish_wqe()
2610 qp->sq.w_list[idx].opcode = mlx5_opcode; in finish_wqe()
2611 qp->sq.wqe_head[idx] = qp->sq.head + nreq; in finish_wqe()
2612 qp->sq.cur_post += DIV_ROUND_UP(size * 16, MLX5_SEND_WQE_BB); in finish_wqe()
2613 qp->sq.w_list[idx].next = qp->sq.cur_post; in finish_wqe()
2628 void *qend = qp->sq.qend; in mlx5_ib_post_send()
2640 spin_lock_irqsave(&qp->sq.lock, flags); in mlx5_ib_post_send()
2652 if (unlikely(num_sge > qp->sq.max_gs)) { in mlx5_ib_post_send()
2694 qp->sq.wr_data[idx] = IB_WR_LOCAL_INV; in mlx5_ib_post_send()
2702 qp->sq.wr_data[idx] = IB_WR_REG_MR; in mlx5_ib_post_send()
2713 qp->sq.wr_data[idx] = IB_WR_REG_SIG_MR; in mlx5_ib_post_send()
2815 qp->sq.wr_data[idx] = MLX5_IB_WR_UMR; in mlx5_ib_post_send()
2869 qp->sq.head += nreq; in mlx5_ib_post_send()
2876 qp->db.db[MLX5_SND_DBR] = cpu_to_be32(qp->sq.cur_post); in mlx5_ib_post_send()
2906 spin_unlock_irqrestore(&qp->sq.lock, flags); in mlx5_ib_post_send()
3125 qp_attr->cap.max_send_wr = qp->sq.max_post; in mlx5_ib_query_qp()
3126 qp_attr->cap.max_send_sge = qp->sq.max_gs; in mlx5_ib_query_qp()