“a2152d096e0cd8593e883f72e875195ea0e89bb7”上不存在“drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c”
提交 29917f47 编写于 作者: M Moni Shoua 提交者: Jason Gunthorpe

IB/mlx5: Add XRC initiator ODP support

Skip XRC segment in the beginning of a send WQE and fetch ODP XRC
capabilities when QP type is IB_QPT_XRC_INI. The rest of the handling is
the same as in RC QP.
Signed-off-by: NMoni Shoua <monis@mellanox.com>
Reviewed-by: NMajd Dibbiny <majd@mellanox.com>
Signed-off-by: NLeon Romanovsky <leonro@mellanox.com>
Signed-off-by: NJason Gunthorpe <jgg@mellanox.com>
上级 6ff7414a
...@@ -1020,6 +1020,10 @@ static int mlx5_ib_mr_initiator_pfault_handler( ...@@ -1020,6 +1020,10 @@ static int mlx5_ib_mr_initiator_pfault_handler(
MLX5_WQE_CTRL_OPCODE_MASK; MLX5_WQE_CTRL_OPCODE_MASK;
switch (qp->ibqp.qp_type) { switch (qp->ibqp.qp_type) {
case IB_QPT_XRC_INI:
*wqe += sizeof(struct mlx5_wqe_xrc_seg);
transport_caps = dev->odp_caps.per_transport_caps.xrc_odp_caps;
break;
case IB_QPT_RC: case IB_QPT_RC:
transport_caps = dev->odp_caps.per_transport_caps.rc_odp_caps; transport_caps = dev->odp_caps.per_transport_caps.rc_odp_caps;
break; break;
...@@ -1039,7 +1043,7 @@ static int mlx5_ib_mr_initiator_pfault_handler( ...@@ -1039,7 +1043,7 @@ static int mlx5_ib_mr_initiator_pfault_handler(
return -EFAULT; return -EFAULT;
} }
if (qp->ibqp.qp_type != IB_QPT_RC) { if (qp->ibqp.qp_type == IB_QPT_UD) {
av = *wqe; av = *wqe;
if (av->dqp_dct & cpu_to_be32(MLX5_EXTENDED_UD_AV)) if (av->dqp_dct & cpu_to_be32(MLX5_EXTENDED_UD_AV))
*wqe += sizeof(struct mlx5_av); *wqe += sizeof(struct mlx5_av);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册