Lines Matching refs:ucmd
413 struct mlx4_ib_create_qp *ucmd)
418 if (check_shl_overflow(1, ucmd->log_sq_bb_count, &cnt) ||
421 if (ucmd->log_sq_stride >
423 ucmd->log_sq_stride < MLX4_IB_MIN_SQ_STRIDE)
426 qp->sq.wqe_cnt = 1 << ucmd->log_sq_bb_count;
427 qp->sq.wqe_shift = ucmd->log_sq_stride;
519 struct mlx4_ib_create_qp_rss *ucmd)
524 if ((ucmd->rx_hash_function == MLX4_IB_RX_HASH_FUNC_TOEPLITZ) &&
526 memcpy(rss_ctx->rss_key, ucmd->rx_hash_key,
533 if (ucmd->rx_hash_fields_mask & ~(u64)(MLX4_IB_RX_HASH_SRC_IPV4 |
543 ucmd->rx_hash_fields_mask);
547 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV4) &&
548 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV4)) {
550 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV4) ||
551 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV4)) {
556 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV6) &&
557 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV6)) {
559 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_IPV6) ||
560 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_IPV6)) {
565 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_UDP) &&
566 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_UDP)) {
580 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_UDP) ||
581 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_UDP)) {
586 if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_TCP) &&
587 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_TCP)) {
596 } else if ((ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_SRC_PORT_TCP) ||
597 (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_DST_PORT_TCP)) {
602 if (ucmd->rx_hash_fields_mask & MLX4_IB_RX_HASH_INNER) {
621 struct mlx4_ib_create_qp_rss *ucmd,
657 err = set_qp_rss(dev, qp->rss_ctx, init_attr, ucmd);
679 struct mlx4_ib_create_qp_rss ucmd = {};
691 required_cmd_sz = offsetof(typeof(ucmd), reserved1) +
692 sizeof(ucmd.reserved1);
698 if (ib_copy_from_udata(&ucmd, udata, min(sizeof(ucmd), udata->inlen))) {
703 if (memchr_inv(ucmd.reserved, 0, sizeof(ucmd.reserved)))
706 if (ucmd.comp_mask || ucmd.reserved1)
709 if (udata->inlen > sizeof(ucmd) &&
710 !ib_is_udata_cleared(udata, sizeof(ucmd),
711 udata->inlen - sizeof(ucmd))) {
735 err = create_qp_rss(to_mdev(pd->device), init_attr, &ucmd, qp);
1032 struct mlx4_ib_create_qp ucmd;
1039 if (ib_copy_from_udata(&ucmd, udata, copy_len)) {
1044 qp->inl_recv_sz = ucmd.inl_recv_sz;
1062 qp->sq_no_prefetch = ucmd.sq_no_prefetch;
1064 err = set_user_sq_size(dev, qp, &ucmd);
1069 ib_umem_get(pd->device, ucmd.buf_addr, qp->buf_size, 0);
1086 err = mlx4_ib_db_map_user(udata, ucmd.db_addr, &qp->db);
4091 struct mlx4_ib_create_wq ucmd;
4097 required_cmd_sz = offsetof(typeof(ucmd), comp_mask) +
4098 sizeof(ucmd.comp_mask);
4104 if (udata->inlen > sizeof(ucmd) &&
4105 !ib_is_udata_cleared(udata, sizeof(ucmd),
4106 udata->inlen - sizeof(ucmd))) {
4229 struct mlx4_ib_modify_wq ucmd = {};
4234 required_cmd_sz = offsetof(typeof(ucmd), reserved) +
4235 sizeof(ucmd.reserved);
4239 if (udata->inlen > sizeof(ucmd) &&
4240 !ib_is_udata_cleared(udata, sizeof(ucmd),
4241 udata->inlen - sizeof(ucmd)))
4244 if (ib_copy_from_udata(&ucmd, udata, min(sizeof(ucmd), udata->inlen)))
4247 if (ucmd.comp_mask || ucmd.reserved)