mlx5_ib_qp
struct mlx5_ib_qp *qp)
static void handle_atomics(struct mlx5_ib_qp *qp, struct mlx5_cqe64 *cqe64,
static void sw_comp(struct mlx5_ib_qp *qp, int num_entries, struct ib_wc *wc,
struct mlx5_ib_qp *qp;
struct mlx5_ib_qp **cur_qp,
struct mlx5_ib_qp *cur_qp = NULL;
struct mlx5_ib_qp *qp = to_mqp(uobj->object);
struct mlx5_ib_qp *mqp = to_mqp(qp);
struct mlx5_ib_qp *mqp;
int mlx5_ib_destroy_gsi(struct mlx5_ib_qp *mqp)
struct mlx5_ib_qp *mqp;
struct mlx5_ib_qp *mqp = to_mqp(qp);
struct mlx5_ib_qp *mqp = to_mqp(qp);
static int mlx5_ib_add_outstanding_wr(struct mlx5_ib_qp *mqp,
static int mlx5_ib_gsi_silent_drop(struct mlx5_ib_qp *mqp, struct ib_ud_wr *wr)
struct mlx5_ib_qp *mqp = to_mqp(qp);
static void generate_completions(struct mlx5_ib_qp *mqp)
struct mlx5_ib_qp *mqp = to_mqp(qp);
struct mlx5_ib_qp *mqp = container_of(gsi, struct mlx5_ib_qp, gsi);
int mlx5_ib_create_gsi(struct ib_pd *pd, struct mlx5_ib_qp *mqp,
struct mlx5_ib_qp *mqp = to_mqp(ibqp);
struct mlx5_ib_qp *mqp;
INIT_RDMA_OBJ_SIZE(ib_qp, mlx5_ib_qp, ibqp),
static inline struct mlx5_ib_qp *to_mibqp(struct mlx5_core_qp *mqp)
static inline struct mlx5_ib_qp *to_mqp(struct ib_qp *ibqp)
return container_of(ibqp, struct mlx5_ib_qp, ibqp);
int mlx5_ib_read_wqe_sq(struct mlx5_ib_qp *qp, int wqe_index, void *buffer,
int mlx5_ib_read_wqe_rq(struct mlx5_ib_qp *qp, int wqe_index, void *buffer,
int mlx5_ib_create_gsi(struct ib_pd *pd, struct mlx5_ib_qp *mqp,
int mlx5_ib_destroy_gsi(struct mlx5_ib_qp *mqp);
struct mlx5_ib_qp *container_mibqp;
struct mlx5_ib_qp *qp, void **wqe, void **wqe_end, int wqe_length)
struct mlx5_ib_qp *qp,
static inline struct mlx5_ib_qp *res_to_qp(struct mlx5_core_rsc_common *res)
struct mlx5_ib_qp *qp;
static void destroy_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp, u32 **in, int *inlen,
static u32 get_rx_type(struct mlx5_ib_qp *qp, struct ib_qp_init_attr *attr)
struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *mqp = rq->base.container_mibqp;
static int mlx5_ib_read_kernel_wqe_sq(struct mlx5_ib_qp *qp, int wqe_index,
static int create_raw_packet_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp)
static void raw_packet_qp_copy_info(struct mlx5_ib_qp *qp,
static void destroy_rss_raw_qp_tir(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp)
struct mlx5_ib_qp *qp,
static int mlx5_ib_read_user_wqe_sq(struct mlx5_ib_qp *qp, int wqe_index,
struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp)
static int create_xrc_tgt_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp,
int mlx5_ib_read_wqe_sq(struct mlx5_ib_qp *qp, int wqe_index, void *buffer,
struct mlx5_ib_qp *qp,
static int mlx5_ib_read_user_wqe_rq(struct mlx5_ib_qp *qp, int wqe_index,
static int modify_raw_packet_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
static void destroy_qp_common(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
int mlx5_ib_read_wqe_rq(struct mlx5_ib_qp *qp, int wqe_index, void *buffer,
struct mlx5_ib_qp *qp,
bool cond, struct mlx5_ib_qp *qp)
static int process_vendor_flags(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
bool cond, struct mlx5_ib_qp *qp)
static int process_create_flags(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp,
static int check_qp_attr(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
static int get_qp_uidx(struct mlx5_ib_qp *qp,
static int mlx5_ib_destroy_dct(struct mlx5_ib_qp *mqp)
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *mqp = to_mqp(qp);
static int set_qpc_atomic_flags(struct mlx5_ib_qp *qp,
static int mlx5_set_path(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *ibqp = sq->base.container_mibqp;
static int modify_raw_packet_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
static bool qp_supports_affinity(struct mlx5_ib_qp *qp)
struct mlx5_ib_qp *mqp = to_mqp(qp);
static int __mlx5_ib_qp_set_raw_qp_counter(struct mlx5_ib_qp *qp, u32 set_id,
struct mlx5_ib_qp *mqp = to_mqp(qp);
struct mlx5_ib_qp *qp = to_mqp(ibqp);
int has_rq, struct mlx5_ib_qp *qp, struct mlx5_ib_create_qp *ucmd)
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *qp)
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *qp, u8 *qp_state)
struct mlx5_ib_qp *qp,
static int query_qp_attr(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
static int mlx5_ib_dct_query_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *mqp,
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *mqp = to_mqp(qp);
struct mlx5_ib_qp *qp)
struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp, struct ib_udata *udata,
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *qp = to_mqp(ibqp);
static void handle_qpt_ud(struct mlx5_ib_qp *qp, const struct ib_send_wr *wr,
void mlx5r_ring_db(struct mlx5_ib_qp *qp, unsigned int nreq,
struct mlx5_ib_qp *qp = to_mqp(ibqp);
struct mlx5_ib_qp *qp = to_mqp(ibqp);
static int set_data_inl_seg(struct mlx5_ib_qp *qp, const struct ib_send_wr *wr,
struct mlx5_ib_qp *qp, void **seg, int *size,
static void set_eth_seg(const struct ib_send_wr *wr, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp, void **seg, int *size,
static int set_reg_wr(struct mlx5_ib_qp *qp,
static void set_linv_wr(struct mlx5_ib_qp *qp, void **seg, int *size,
static void dump_wqe(struct mlx5_ib_qp *qp, u32 idx, int size_16)
int mlx5r_begin_wqe(struct mlx5_ib_qp *qp, void **seg,
static int begin_wqe(struct mlx5_ib_qp *qp, void **seg,
void mlx5r_finish_wqe(struct mlx5_ib_qp *qp, struct mlx5_wqe_ctrl_seg *ctrl,
static void handle_local_inv(struct mlx5_ib_qp *qp, const struct ib_send_wr *wr,
static int handle_reg_mr(struct mlx5_ib_qp *qp, const struct ib_send_wr *wr,
static int handle_psv(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
struct mlx5_ib_qp *qp,
static int handle_qpt_rc(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
static void handle_qpt_hw_gsi(struct mlx5_ib_qp *qp,
void mlx5r_ring_db(struct mlx5_ib_qp *qp, unsigned int nreq,
int mlx5r_begin_wqe(struct mlx5_ib_qp *qp, void **seg,
void mlx5r_finish_wqe(struct mlx5_ib_qp *qp, struct mlx5_wqe_ctrl_seg *ctrl,