Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ed1f5b58 authored by Mitch Williams's avatar Mitch Williams Committed by David S. Miller
Browse files

i40evf: remove VLAN filters on close



We remove all the MAC filters, so remove the VLAN filters, too.

Change-ID: I4f7559acdf005dc3f359bf6460ce32d183c8878b
Signed-off-by: default avatarMitch Williams <mitch.a.williams@intel.com>
Signed-off-by: default avatarJesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: default avatarSibai Li <sibai.li@intel.com>
Signed-off-by: default avatarAaron Brown <aaron.f.brown@intel.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 625777e3
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -972,9 +972,14 @@ void i40evf_down(struct i40evf_adapter *adapter)
	list_for_each_entry(f, &adapter->mac_filter_list, list) {
		f->remove = true;
	}
	/* remove all VLAN filters */
	list_for_each_entry(f, &adapter->vlan_filter_list, list) {
		f->remove = true;
	}
	if (!(adapter->flags & I40EVF_FLAG_PF_COMMS_FAILED) &&
	    adapter->state != __I40EVF_RESETTING) {
		adapter->aq_required |= I40EVF_FLAG_AQ_DEL_MAC_FILTER;
		adapter->aq_required |= I40EVF_FLAG_AQ_DEL_VLAN_FILTER;
		/* disable receives */
		adapter->aq_required |= I40EVF_FLAG_AQ_DISABLE_QUEUES;
		mod_timer_pending(&adapter->watchdog_timer, jiffies + 1);