diff options
author | Rasesh Mody <rmody@brocade.com> | 2011-09-16 15:06:47 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-09-17 00:47:57 -0400 |
commit | 3fb9852f98ffb4cdd3bad6eb50b1a6d58cee1298 (patch) | |
tree | 89d2d7fef55023e6c5c670b66804980710a95f66 /drivers/net/ethernet/brocade/bna | |
parent | 1d51a1325e43e0c05df626735c66d52203d610fd (diff) | |
download | kernel_goldelico_gta04-3fb9852f98ffb4cdd3bad6eb50b1a6d58cee1298.zip kernel_goldelico_gta04-3fb9852f98ffb4cdd3bad6eb50b1a6d58cee1298.tar.gz kernel_goldelico_gta04-3fb9852f98ffb4cdd3bad6eb50b1a6d58cee1298.tar.bz2 |
bna: Set Ring Param Fix
When Rx queue size is changed, queues are torn down and setup with the new queue
size. During this operation, clear promiscuous mode and restore the original
VLAN filter.
Signed-off-by: Gurunatha Karaje <gkaraje@brocade.com>
Signed-off-by: Rasesh Mody <rmody@brocade.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/brocade/bna')
-rw-r--r-- | drivers/net/ethernet/brocade/bna/bnad_ethtool.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/brocade/bna/bnad_ethtool.c b/drivers/net/ethernet/brocade/bna/bnad_ethtool.c index 4842224..ac6b495 100644 --- a/drivers/net/ethernet/brocade/bna/bnad_ethtool.c +++ b/drivers/net/ethernet/brocade/bna/bnad_ethtool.c @@ -471,16 +471,17 @@ bnad_set_ringparam(struct net_device *netdev, current_err = bnad_setup_rx(bnad, i); if (current_err && !err) err = current_err; - if (!err) - bnad_restore_vlans(bnad, i); } if (!err && bnad->rx_info[0].rx) { /* restore rx configuration */ + bnad_restore_vlans(bnad, 0); bnad_enable_default_bcast(bnad); spin_lock_irqsave(&bnad->bna_lock, flags); bnad_mac_addr_set_locked(bnad, netdev->dev_addr); spin_unlock_irqrestore(&bnad->bna_lock, flags); + bnad->cfg_flags &= ~(BNAD_CF_ALLMULTI | + BNAD_CF_PROMISC); bnad_set_rx_mode(netdev); } } |