static int mlx5i_pkey_init_tx(struct mlx5e_priv *priv) { struct mlx5i_priv *ipriv = priv->ppriv; int err; err = mlx5i_create_underlay_qp(priv->mdev, &ipriv->qp); if (err) { mlx5_core_warn(priv->mdev, "create child underlay QP failed, %d\n", err); return err; } return 0; }
static int mlx5i_init_tx(struct mlx5e_priv *priv) { struct mlx5i_priv *ipriv = priv->ppriv; int err; err = mlx5i_create_underlay_qp(priv->mdev, &ipriv->qp); if (err) { mlx5_core_warn(priv->mdev, "create underlay QP failed, %d\n", err); return err; } err = mlx5e_create_tis(priv->mdev, 0 /* tc */, ipriv->qp.qpn, &priv->tisn[0]); if (err) { mlx5_core_warn(priv->mdev, "create tis failed, %d\n", err); goto err_destroy_underlay_qp; } return 0; err_destroy_underlay_qp: mlx5i_destroy_underlay_qp(priv->mdev, &ipriv->qp); return err; }