mirror of https://gitee.com/openkylin/linux.git
i40e: ignore duplicate port VLAN requests
If user attempts to set a port VLAN on a VF that already has the same port VLAN configured, the driver will go through a completely unnecessary flurry of filter removals and filter adds. Just check for this condition and return success instead of doing a bunch of busywork. Change-ID: Ia1a9e83e6ed48b3f4658bc20dfc6af0cf525d54a Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Jim Young <james.m.young@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
973371da4d
commit
85927ec1b3
|
@ -2088,6 +2088,10 @@ int i40e_ndo_set_vf_port_vlan(struct net_device *netdev,
|
|||
goto error_pvid;
|
||||
}
|
||||
|
||||
if (vsi->info.pvid == (vlan_id | (qos << I40E_VLAN_PRIORITY_SHIFT)))
|
||||
/* duplicate request, so just return success */
|
||||
goto error_pvid;
|
||||
|
||||
if (vsi->info.pvid == 0 && i40e_is_vsi_in_vlan(vsi)) {
|
||||
dev_err(&pf->pdev->dev,
|
||||
"VF %d has already configured VLAN filters and the administrator is requesting a port VLAN override.\nPlease unload and reload the VF driver for this change to take effect.\n",
|
||||
|
|
Loading…
Reference in New Issue