igc: Remove igc_nfc_rule_exit()
authorAndre Guedes <andre.guedes@intel.com>
Fri, 24 Apr 2020 20:16:23 +0000 (13:16 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sat, 23 May 2020 01:21:52 +0000 (18:21 -0700)
During igc_down(), we call igc_nfc_rule_exit() which traverse the NFC
rule list disabling filters one by one. Later on in igc_down() flow
we issue an hardware reset which also clear all filters.  Since we
already reset the hardware, we don't actually need to disable each
filter manually. In order to simplify the code, this patch removes
igc_nfc_rule() altogether.

Signed-off-by: Andre Guedes <andre.guedes@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/igc/igc_main.c

index 165263a..97d2699 100644 (file)
@@ -2591,18 +2591,6 @@ static void igc_restore_nfc_rules(struct igc_adapter *adapter)
        mutex_unlock(&adapter->nfc_rule_lock);
 }
 
-static void igc_nfc_rule_exit(struct igc_adapter *adapter)
-{
-       struct igc_nfc_rule *rule;
-
-       mutex_lock(&adapter->nfc_rule_lock);
-
-       list_for_each_entry(rule, &adapter->nfc_rule_list, list)
-               igc_disable_nfc_rule(adapter, rule);
-
-       mutex_unlock(&adapter->nfc_rule_lock);
-}
-
 static int igc_uc_sync(struct net_device *netdev, const unsigned char *addr)
 {
        struct igc_adapter *adapter = netdev_priv(netdev);
@@ -3821,8 +3809,6 @@ void igc_down(struct igc_adapter *adapter)
        wr32(IGC_RCTL, rctl & ~IGC_RCTL_EN);
        /* flush and sleep below */
 
-       igc_nfc_rule_exit(adapter);
-
        /* set trans_start so we don't get spurious watchdogs during reset */
        netif_trans_update(netdev);