bna: Set Ring Param Fix
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / net / ethernet / brocade / bna / bnad_ethtool.c
index 48422244397c250053b92b21f745abe1e7d4df55..ac6b49561bf03e3d8910fee32fb319b41a6b223a 100644 (file)
@@ -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);
                }
        }