IB/mlx5: Always return success for RoCE modify port

CM layer calls ib_modify_port() regardless of the link layer.

For the Ethernet ports, qkey violation and Port capabilities
are meaningless. Therefore, always return success for ib_modify_port
calls on the Ethernet ports.

Cc: Selvin Xavier <selvin.xavier@broadcom.com>
Signed-off-by: Majd Dibbiny <majd@mellanox.com>
Reviewed-by: Moni Shoua <monis@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>

authored by

Majd Dibbiny and committed by
Doug Ledford
ec255879 1d31e9c0

+6
+6
drivers/infiniband/hw/mlx5/main.c
··· 1085 bool is_ib = (mlx5_ib_port_link_layer(ibdev, port) == 1086 IB_LINK_LAYER_INFINIBAND); 1087 1088 if (MLX5_CAP_GEN(dev->mdev, ib_virt) && is_ib) { 1089 change_mask = props->clr_port_cap_mask | props->set_port_cap_mask; 1090 value = ~props->clr_port_cap_mask | props->set_port_cap_mask;
··· 1085 bool is_ib = (mlx5_ib_port_link_layer(ibdev, port) == 1086 IB_LINK_LAYER_INFINIBAND); 1087 1088 + /* CM layer calls ib_modify_port() regardless of the link layer. For 1089 + * Ethernet ports, qkey violation and Port capabilities are meaningless. 1090 + */ 1091 + if (!is_ib) 1092 + return 0; 1093 + 1094 if (MLX5_CAP_GEN(dev->mdev, ib_virt) && is_ib) { 1095 change_mask = props->clr_port_cap_mask | props->set_port_cap_mask; 1096 value = ~props->clr_port_cap_mask | props->set_port_cap_mask;