driver should use rdma_vlan_dev_real_dev() instead of using vlan_dev_real_dev() while building GID table for a vlan interface.
Signed-off-by: Devesh Sharma <[email protected]> --- drivers/infiniband/hw/ocrdma/ocrdma_main.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/infiniband/hw/ocrdma/ocrdma_main.c b/drivers/infiniband/hw/ocrdma/ocrdma_main.c index 91443bc..f7b1b27 100644 --- a/drivers/infiniband/hw/ocrdma/ocrdma_main.c +++ b/drivers/infiniband/hw/ocrdma/ocrdma_main.c @@ -161,7 +161,9 @@ static void ocrdma_add_vlan_sgids(struct ocrdma_dev *dev) rcu_read_lock(); for_each_netdev_rcu(&init_net, tmp) { - if (netdev == tmp || vlan_dev_real_dev(tmp) == netdev) { + if ( + netdev && (netdev == tmp || + rdma_vlan_dev_real_dev(tmp) == netdev)) { if (!netif_running(tmp) || !netif_oper_up(tmp)) continue; if (netdev != tmp) { @@ -208,7 +210,7 @@ static int ocrdma_inet6addr_event(struct notifier_block *notifier, is_vlan = netdev->priv_flags & IFF_802_1Q_VLAN; if (is_vlan) { vid = vlan_dev_vlan_id(netdev); - netdev = vlan_dev_real_dev(netdev); + netdev = rdma_vlan_dev_real_dev(netdev); } rcu_read_lock(); -- 1.7.1 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
