提交 40d01366 编写于 作者: M Mitch Williams 提交者: Jeff Kirsher

i40evf: use correct struct for list manipulation

Not sure how this compiles at all. Use the correct struct for
manipulating the VLAN filter list. Without this, the VLAN filter
list doesn't get processed correctly, and VLAN filters will not
be re-enabled after any kind of reset.

Change-ID: Iceff2dc089f303058fb71ecb08419eed471e0e90
Signed-off-by: NMitch Williams <mitch.a.williams@intel.com>
Tested-by: NAndrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
上级 09603eaa
...@@ -1609,6 +1609,7 @@ static void i40evf_reset_task(struct work_struct *work) ...@@ -1609,6 +1609,7 @@ static void i40evf_reset_task(struct work_struct *work)
reset_task); reset_task);
struct net_device *netdev = adapter->netdev; struct net_device *netdev = adapter->netdev;
struct i40e_hw *hw = &adapter->hw; struct i40e_hw *hw = &adapter->hw;
struct i40evf_vlan_filter *vlf;
struct i40evf_mac_filter *f; struct i40evf_mac_filter *f;
u32 reg_val; u32 reg_val;
int i = 0, err; int i = 0, err;
...@@ -1732,8 +1733,8 @@ static void i40evf_reset_task(struct work_struct *work) ...@@ -1732,8 +1733,8 @@ static void i40evf_reset_task(struct work_struct *work)
f->add = true; f->add = true;
} }
/* re-add all VLAN filters */ /* re-add all VLAN filters */
list_for_each_entry(f, &adapter->vlan_filter_list, list) { list_for_each_entry(vlf, &adapter->vlan_filter_list, list) {
f->add = true; vlf->add = true;
} }
adapter->aq_required |= I40EVF_FLAG_AQ_ADD_MAC_FILTER; adapter->aq_required |= I40EVF_FLAG_AQ_ADD_MAC_FILTER;
adapter->aq_required |= I40EVF_FLAG_AQ_ADD_VLAN_FILTER; adapter->aq_required |= I40EVF_FLAG_AQ_ADD_VLAN_FILTER;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册