i40e: Fix I40E_FLAG_VF_VLAN_PRUNING value
[ Upstream commit665e7d83c5
] Commitc87c938f62
("i40e: Add VF VLAN pruning") added new PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag. Move the affected flag at the end of the flags and fix its value. Reproducer: [root@cnb-03 ~]# ethtool --set-priv-flags enp2s0f0np0 link-down-on-close on [root@cnb-03 ~]# ethtool --set-priv-flags enp2s0f0np0 vf-vlan-pruning on [root@cnb-03 ~]# ethtool --set-priv-flags enp2s0f0np0 link-down-on-close off [ 6323.142585] i40e 0000:02:00.0: Setting link-down-on-close not supported on this port (because total-port-shutdown is enabled) netlink error: Operation not supported [root@cnb-03 ~]# ethtool --set-priv-flags enp2s0f0np0 vf-vlan-pruning off [root@cnb-03 ~]# ethtool --set-priv-flags enp2s0f0np0 link-down-on-close off The link-down-on-close flag cannot be modified after setting vf-vlan-pruning because vf-vlan-pruning shares the same bit with total-port-shutdown flag that prevents any modification of link-down-on-close flag. Fixes:c87c938f62
("i40e: Add VF VLAN pruning") Cc: Mateusz Palczewski <mateusz.palczewski@intel.com> Cc: Simon Horman <horms@kernel.org> Signed-off-by: Ivan Vecera <ivecera@redhat.com> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel) Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Родитель
c532c5df01
Коммит
bc0c4bc119
|
@ -566,7 +566,6 @@ struct i40e_pf {
|
|||
#define I40E_FLAG_DISABLE_FW_LLDP BIT(24)
|
||||
#define I40E_FLAG_RS_FEC BIT(25)
|
||||
#define I40E_FLAG_BASE_R_FEC BIT(26)
|
||||
#define I40E_FLAG_VF_VLAN_PRUNING BIT(27)
|
||||
/* TOTAL_PORT_SHUTDOWN
|
||||
* Allows to physically disable the link on the NIC's port.
|
||||
* If enabled, (after link down request from the OS)
|
||||
|
@ -589,6 +588,7 @@ struct i40e_pf {
|
|||
* in abilities field of i40e_aq_set_phy_config structure
|
||||
*/
|
||||
#define I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED BIT(27)
|
||||
#define I40E_FLAG_VF_VLAN_PRUNING BIT(28)
|
||||
|
||||
struct i40e_client_instance *cinst;
|
||||
bool stat_offsets_loaded;
|
||||
|
|
Загрузка…
Ссылка в новой задаче