scsi: libcxgbi: in case of vlan pass 0 as ifindex to find route

In case of vlan pass 0 as ifindex to find route instead of passing
real_dev ifindex, if we pass real_dev ifindex then
ip_route_output_ports() and ip6_route_output() will check for route
through real_dev not through vlan interface.

Signed-off-by: Varun Prakash <varun@chelsio.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Varun Prakash 2017-10-10 19:25:30 +05:30 committed by Martin K. Petersen
parent 607162140d
commit 4c2a02157f
1 changed files with 4 additions and 1 deletions

View File

@ -2554,7 +2554,10 @@ struct iscsi_endpoint *cxgbi_ep_connect(struct Scsi_Host *shost,
goto err_out; goto err_out;
} }
ifindex = hba->ndev->ifindex; rtnl_lock();
if (!vlan_uses_dev(hba->ndev))
ifindex = hba->ndev->ifindex;
rtnl_unlock();
} }
if (dst_addr->sa_family == AF_INET) { if (dst_addr->sa_family == AF_INET) {