]> Pileus Git - ~andy/linux/commitdiff
ixgbe: allow RAR table to be updated in promisc mode
authorJohn Fastabend <john.r.fastabend@intel.com>
Sun, 15 Apr 2012 06:44:25 +0000 (06:44 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sun, 15 Apr 2012 17:06:05 +0000 (13:06 -0400)
This allows RAR table updates while in promiscuous. With
SR-IOV enabled it is valuable to allow the RAR table to
be updated even when in promisc mode to configure forwarding

Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

index 8b373951f64493bb31738c396acf5d8087bd1989..25a7ed917a302aad55d8c3a87449b5a1d87ff7ca 100644 (file)
@@ -3462,16 +3462,17 @@ void ixgbe_set_rx_mode(struct net_device *netdev)
                }
                ixgbe_vlan_filter_enable(adapter);
                hw->addr_ctrl.user_set_promisc = false;
-               /*
-                * Write addresses to available RAR registers, if there is not
-                * sufficient space to store all the addresses then enable
-                * unicast promiscuous mode
-                */
-               count = ixgbe_write_uc_addr_list(netdev);
-               if (count < 0) {
-                       fctrl |= IXGBE_FCTRL_UPE;
-                       vmolr |= IXGBE_VMOLR_ROPE;
-               }
+       }
+
+       /*
+        * Write addresses to available RAR registers, if there is not
+        * sufficient space to store all the addresses then enable
+        * unicast promiscuous mode
+        */
+       count = ixgbe_write_uc_addr_list(netdev);
+       if (count < 0) {
+               fctrl |= IXGBE_FCTRL_UPE;
+               vmolr |= IXGBE_VMOLR_ROPE;
        }
 
        if (adapter->num_vfs) {