Lines Matching refs:ucmd
437 struct mlx4_ib_create_qp *ucmd) in set_user_sq_size() argument
440 if ((1 << ucmd->log_sq_bb_count) > dev->dev->caps.max_wqes || in set_user_sq_size()
441 ucmd->log_sq_stride > in set_user_sq_size()
443 ucmd->log_sq_stride < MLX4_IB_MIN_SQ_STRIDE) in set_user_sq_size()
446 qp->sq.wqe_cnt = 1 << ucmd->log_sq_bb_count; in set_user_sq_size()
447 qp->sq.wqe_shift = ucmd->log_sq_stride; in set_user_sq_size()
539 struct mlx4_ib_create_qp_rss *ucmd) in set_qp_rss() argument
544 if ((ucmd->rx_hash_function == MLX4_IB_RX_HASH_FUNC_TOEPLITZ) && in set_qp_rss()
546 memcpy(rss_ctx->rss_key, ucmd->rx_hash_key, in set_qp_rss()
553 if (ucmd->rx_hash_fields_mask & ~(MLX4_IB_RX_HASH_SRC_IPV4 | in set_qp_rss()
563 ucmd->rx_hash_fields_mask); in set_qp_rss()
567 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV4) && in set_qp_rss()
568 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV4)) { in set_qp_rss()
570 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV4) || in set_qp_rss()
571 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV4)) { in set_qp_rss()
576 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV6) && in set_qp_rss()
577 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV6)) { in set_qp_rss()
579 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV6) || in set_qp_rss()
580 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV6)) { in set_qp_rss()
585 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_UDP) && in set_qp_rss()
586 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_UDP)) { in set_qp_rss()
600 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_UDP) || in set_qp_rss()
601 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_UDP)) { in set_qp_rss()
606 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_TCP) && in set_qp_rss()
607 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_TCP)) { in set_qp_rss()
616 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_TCP) || in set_qp_rss()
617 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_TCP)) { in set_qp_rss()
622 if (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_INNER) { in set_qp_rss()
641 struct mlx4_ib_create_qp_rss *ucmd, in create_qp_rss() argument
679 err = set_qp_rss(dev, qp->rss_ctx, init_attr, ucmd); in create_qp_rss()
702 struct mlx4_ib_create_qp_rss ucmd = {}; in _mlx4_ib_create_qp_rss() local
714 required_cmd_sz = offsetof(typeof(ucmd), reserved1) + in _mlx4_ib_create_qp_rss()
715 sizeof(ucmd.reserved1); in _mlx4_ib_create_qp_rss()
721 if (ib_copy_from_udata(&ucmd, udata, min(sizeof(ucmd), udata->inlen))) { in _mlx4_ib_create_qp_rss()
726 if (memchr_inv(ucmd.reserved, 0, sizeof(ucmd.reserved))) in _mlx4_ib_create_qp_rss()
729 if (ucmd.comp_mask || ucmd.reserved1) in _mlx4_ib_create_qp_rss()
732 if (udata->inlen > sizeof(ucmd) && in _mlx4_ib_create_qp_rss()
733 !ib_is_udata_cleared(udata, sizeof(ucmd), in _mlx4_ib_create_qp_rss()
734 udata->inlen - sizeof(ucmd))) { in _mlx4_ib_create_qp_rss()
762 err = create_qp_rss(to_mdev(pd->device), init_attr, &ucmd, qp); in _mlx4_ib_create_qp_rss()
949 } ucmd; in create_qp_common() local
958 if (ib_copy_from_udata(&ucmd, udata, copy_len)) { in create_qp_common()
964 if (ucmd.wq.comp_mask || ucmd.wq.reserved[0] || in create_qp_common()
965 ucmd.wq.reserved[1] || ucmd.wq.reserved[2]) { in create_qp_common()
971 if (ucmd.wq.log_range_size > in create_qp_common()
978 range_size = 1 << ucmd.wq.log_range_size; in create_qp_common()
980 qp->inl_recv_sz = ucmd.qp.inl_recv_sz; in create_qp_common()
1000 qp->sq_no_prefetch = ucmd.qp.sq_no_prefetch; in create_qp_common()
1004 &ucmd); in create_qp_common()
1019 (src == MLX4_IB_QP_SRC) ? ucmd.qp.buf_addr : in create_qp_common()
1020 ucmd.wq.buf_addr, qp->buf_size, 0, 0); in create_qp_common()
1039 (src == MLX4_IB_QP_SRC) ? ucmd.qp.db_addr : in create_qp_common()
1040 ucmd.wq.db_addr, &qp->db); in create_qp_common()
4050 struct mlx4_ib_create_wq ucmd; in mlx4_ib_create_wq() local
4056 required_cmd_sz = offsetof(typeof(ucmd), comp_mask) + in mlx4_ib_create_wq()
4057 sizeof(ucmd.comp_mask); in mlx4_ib_create_wq()
4063 if (udata->inlen > sizeof(ucmd) && in mlx4_ib_create_wq()
4064 !ib_is_udata_cleared(udata, sizeof(ucmd), in mlx4_ib_create_wq()
4065 udata->inlen - sizeof(ucmd))) { in mlx4_ib_create_wq()
4187 struct mlx4_ib_modify_wq ucmd = {}; in mlx4_ib_modify_wq() local
4192 required_cmd_sz = offsetof(typeof(ucmd), reserved) + in mlx4_ib_modify_wq()
4193 sizeof(ucmd.reserved); in mlx4_ib_modify_wq()
4197 if (udata->inlen > sizeof(ucmd) && in mlx4_ib_modify_wq()
4198 !ib_is_udata_cleared(udata, sizeof(ucmd), in mlx4_ib_modify_wq()
4199 udata->inlen - sizeof(ucmd))) in mlx4_ib_modify_wq()
4202 if (ib_copy_from_udata(&ucmd, udata, min(sizeof(ucmd), udata->inlen))) in mlx4_ib_modify_wq()
4205 if (ucmd.comp_mask || ucmd.reserved) in mlx4_ib_modify_wq()