mirror of https://gitee.com/openkylin/linux.git
be2net: Fix be_vlan_rem_vid() to check vlan id being removed
The driver decrements its vlan count without checking if it is really present in its list. This results in an invalid vlan count and impacts subsequent vlan add/rem ops. The function be_vlan_rem_vid() should be updated to fix this. Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
fa5c867d4d
commit
41dcdfbd09
|
@ -1463,6 +1463,9 @@ static int be_vlan_rem_vid(struct net_device *netdev, __be16 proto, u16 vid)
|
|||
if (lancer_chip(adapter) && vid == 0)
|
||||
return 0;
|
||||
|
||||
if (!test_bit(vid, adapter->vids))
|
||||
return 0;
|
||||
|
||||
clear_bit(vid, adapter->vids);
|
||||
adapter->vlans_added--;
|
||||
|
||||
|
|
Loading…
Reference in New Issue