diff options
author | David S. Miller <davem@davemloft.net> | 2014-01-28 12:00:00 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-01-28 12:00:00 -0800 |
commit | 77c14e512f5361e2b859c2ad05a54b5679b0f2d8 (patch) | |
tree | 6f022775a11f09715d6bcf84c60197900036d431 /drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c | |
parent | d922e1cb1ea17ac7f0a5c3c2be98d4bd80d055b8 (diff) | |
parent | 092dfcf347241576a98d3b1bb4b9b98e0faeb801 (diff) | |
download | lwn-77c14e512f5361e2b859c2ad05a54b5679b0f2d8.tar.gz lwn-77c14e512f5361e2b859c2ad05a54b5679b0f2d8.zip |
Merge branch 'qlcnic'
Rajesh Borundia says:
====================
qlcnic: bug fixes
The patch series contains following bug fixes
o Bound checks for number of receive descriptors and number of recieve rings.
Both of these have off-by-one errors.
o Vlan list was getting re-initialized in case of adapter reset.
o Tx queue was timing out because of missing start queue for a corresponding
netif_tx_disable.
o Loopback test failed because driver was not setting linkup variable
while handling link events.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c')
-rw-r--r-- | drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c index 17a1ca2050f4..0638c1810d54 100644 --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c @@ -448,8 +448,7 @@ static int qlcnic_sriov_set_guest_vlan_mode(struct qlcnic_adapter *adapter, return 0; } -static int qlcnic_sriov_get_vf_acl(struct qlcnic_adapter *adapter, - struct qlcnic_info *info) +static int qlcnic_sriov_get_vf_acl(struct qlcnic_adapter *adapter) { struct qlcnic_sriov *sriov = adapter->ahw->sriov; struct qlcnic_cmd_args cmd; @@ -495,10 +494,6 @@ static int qlcnic_sriov_vf_init_driver(struct qlcnic_adapter *adapter) if (err) return -EIO; - err = qlcnic_sriov_get_vf_acl(adapter, &nic_info); - if (err) - return err; - if (qlcnic_83xx_get_port_info(adapter)) return -EIO; @@ -555,6 +550,10 @@ static int qlcnic_sriov_setup_vf(struct qlcnic_adapter *adapter, if (err) goto err_out_send_channel_term; + err = qlcnic_sriov_get_vf_acl(adapter); + if (err) + goto err_out_send_channel_term; + err = qlcnic_setup_netdev(adapter, adapter->netdev, pci_using_dac); if (err) goto err_out_send_channel_term; |