Thread (1 message) 1 message, 1 author, 2016-07-03

Re: [PATCH for-next 3/3] IB/mlx5: Fix mlx5_set_path for Raw Packet QP

From: Or Gerlitz <hidden>
Date: 2016-07-03 21:55:36

On Sun, Jul 3, 2016 at 3:42 PM, Leon Romanovsky [off-list ref] wrote:
quoted hunk
--- a/drivers/infiniband/hw/mlx5/qp.c
+++ b/drivers/infiniband/hw/mlx5/qp.c
@@ -2175,7 +2175,8 @@ static int mlx5_set_path(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
        }

        if (ll == IB_LINK_LAYER_ETHERNET) {
-               if (!(ah->ah_flags & IB_AH_GRH))
+               if (!(ah->ah_flags & IB_AH_GRH) &&
+                   (qp->ibqp.qp_type != IB_QPT_RAW_PACKET))
                        return -EINVAL;
                memcpy(path->rmac, ah->dmac, sizeof(ah->dmac));
                path->udp_sport = mlx5_get_roce_udp_sport(dev, port,
As you can see here, that code was written with RoCE state of mind,
e.g they set the remote mac and udp source port, with both being
irrelevant for RAW packet QPs. So in that respect, your fix is wrong.
Make the code clear and correct in what they set to RoCE QPs, to RAW
Packet QPs and to both.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help