IB/providers: Avoid zero GID check for RoCE
Now that the IB core GID cache ensures that a zero GID doesn't exist in the GID table remove zero GID checks from the provider drivers for clarity. Reviewed-by: Mark Bloch <markb@mellanox.com> Signed-off-by: Parav Pandit <parav@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
parent
598ff6bae6
commit
14169e333e
|
@ -411,9 +411,6 @@ int mlx4_ib_gid_index_to_real_index(struct mlx4_ib_dev *ibdev,
|
||||||
if (attr.ndev)
|
if (attr.ndev)
|
||||||
dev_put(attr.ndev);
|
dev_put(attr.ndev);
|
||||||
|
|
||||||
if (!memcmp(&gid, &zgid, sizeof(gid)))
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
spin_lock_irqsave(&iboe->lock, flags);
|
spin_lock_irqsave(&iboe->lock, flags);
|
||||||
port_gid_table = &iboe->gids[port_num - 1];
|
port_gid_table = &iboe->gids[port_num - 1];
|
||||||
|
|
||||||
|
|
|
@ -2370,8 +2370,6 @@ static int __mlx4_ib_modify_qp(void *src, enum mlx4_ib_source_type src_type,
|
||||||
|
|
||||||
status = ib_get_cached_gid(&dev->ib_dev, port_num,
|
status = ib_get_cached_gid(&dev->ib_dev, port_num,
|
||||||
index, &gid, &gid_attr);
|
index, &gid, &gid_attr);
|
||||||
if (!status && !memcmp(&gid, &zgid, sizeof(gid)))
|
|
||||||
status = -ENOENT;
|
|
||||||
if (!status && gid_attr.ndev) {
|
if (!status && gid_attr.ndev) {
|
||||||
vlan = rdma_vlan_dev_vlan_id(gid_attr.ndev);
|
vlan = rdma_vlan_dev_vlan_id(gid_attr.ndev);
|
||||||
memcpy(smac, gid_attr.ndev->dev_addr, ETH_ALEN);
|
memcpy(smac, gid_attr.ndev->dev_addr, ETH_ALEN);
|
||||||
|
|
|
@ -2494,7 +2494,7 @@ static int ocrdma_set_av_params(struct ocrdma_qp *qp,
|
||||||
{
|
{
|
||||||
int status;
|
int status;
|
||||||
struct rdma_ah_attr *ah_attr = &attrs->ah_attr;
|
struct rdma_ah_attr *ah_attr = &attrs->ah_attr;
|
||||||
union ib_gid sgid, zgid;
|
union ib_gid sgid;
|
||||||
struct ib_gid_attr sgid_attr;
|
struct ib_gid_attr sgid_attr;
|
||||||
u32 vlan_id = 0xFFFF;
|
u32 vlan_id = 0xFFFF;
|
||||||
u8 mac_addr[6], hdr_type;
|
u8 mac_addr[6], hdr_type;
|
||||||
|
@ -2533,10 +2533,6 @@ static int ocrdma_set_av_params(struct ocrdma_qp *qp,
|
||||||
dev_put(sgid_attr.ndev);
|
dev_put(sgid_attr.ndev);
|
||||||
}
|
}
|
||||||
|
|
||||||
memset(&zgid, 0, sizeof(zgid));
|
|
||||||
if (!memcmp(&sgid, &zgid, sizeof(zgid)))
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
qp->sgid_idx = grh->sgid_index;
|
qp->sgid_idx = grh->sgid_index;
|
||||||
memcpy(&cmd->params.sgid[0], &sgid.raw[0], sizeof(cmd->params.sgid));
|
memcpy(&cmd->params.sgid[0], &sgid.raw[0], sizeof(cmd->params.sgid));
|
||||||
status = ocrdma_resolve_dmac(dev, ah_attr, &mac_addr[0]);
|
status = ocrdma_resolve_dmac(dev, ah_attr, &mac_addr[0]);
|
||||||
|
|
|
@ -420,12 +420,6 @@ static inline int qedr_gsi_build_header(struct qedr_dev *dev,
|
||||||
dev_put(sgid_attr.ndev);
|
dev_put(sgid_attr.ndev);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!memcmp(&sgid, &zgid, sizeof(sgid))) {
|
|
||||||
DP_ERR(dev, "gsi post send: GID not found GID index %d\n",
|
|
||||||
grh->sgid_index);
|
|
||||||
return -ENOENT;
|
|
||||||
}
|
|
||||||
|
|
||||||
has_udp = (sgid_attr.gid_type == IB_GID_TYPE_ROCE_UDP_ENCAP);
|
has_udp = (sgid_attr.gid_type == IB_GID_TYPE_ROCE_UDP_ENCAP);
|
||||||
if (!has_udp) {
|
if (!has_udp) {
|
||||||
/* RoCE v1 */
|
/* RoCE v1 */
|
||||||
|
|
|
@ -1093,9 +1093,6 @@ static inline int get_gid_info_from_table(struct ib_qp *ibqp,
|
||||||
if (rc)
|
if (rc)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
if (!memcmp(&gid, &zgid, sizeof(gid)))
|
|
||||||
return -ENOENT;
|
|
||||||
|
|
||||||
if (gid_attr.ndev) {
|
if (gid_attr.ndev) {
|
||||||
qp_params->vlan_id = rdma_vlan_dev_vlan_id(gid_attr.ndev);
|
qp_params->vlan_id = rdma_vlan_dev_vlan_id(gid_attr.ndev);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue