diff options
author | Ganesh Goudar <ganeshgr@chelsio.com> | 2017-09-23 16:07:28 +0530 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-09-25 20:28:14 -0700 |
commit | ba581f77df23c8ee70b372966e69cf10bc5453d8 (patch) | |
tree | 06151fe339ec16854b90eb8ef3e68d8e37c935da /drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | |
parent | Merge branch 'liquidio-fw-loading' (diff) | |
download | linux-dev-ba581f77df23c8ee70b372966e69cf10bc5453d8.tar.xz linux-dev-ba581f77df23c8ee70b372966e69cf10bc5453d8.zip |
cxgb4: do DCB state reset in couple of places
reset the driver's DCB state in couple of places
where it was missing.
Signed-off-by: Casey Leedom <leedom@chelsio.com>
Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r-- | drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c index aa93ae95d3b9..13b636b0af5f 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c @@ -281,7 +281,7 @@ void t4_os_link_changed(struct adapter *adapter, int port_id, int link_stat) else { #ifdef CONFIG_CHELSIO_T4_DCB if (cxgb4_dcb_enabled(dev)) { - cxgb4_dcb_state_init(dev); + cxgb4_dcb_reset(dev); dcb_tx_queue_prio_enable(dev, false); } #endif /* CONFIG_CHELSIO_T4_DCB */ @@ -2304,10 +2304,16 @@ static int cxgb_close(struct net_device *dev) { struct port_info *pi = netdev_priv(dev); struct adapter *adapter = pi->adapter; + int ret; netif_tx_stop_all_queues(dev); netif_carrier_off(dev); - return t4_enable_vi(adapter, adapter->pf, pi->viid, false, false); + ret = t4_enable_vi(adapter, adapter->pf, pi->viid, false, false); +#ifdef CONFIG_CHELSIO_T4_DCB + cxgb4_dcb_reset(dev); + dcb_tx_queue_prio_enable(dev, false); +#endif + return ret; } int cxgb4_create_server_filter(const struct net_device *dev, unsigned int stid, |