FAILED: patch "[PATCH] ice: Fix double VLAN error when entering promisc mode" failed to apply to 5.15-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 5.15-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From ffa9ed86522f1c08d4face4e0a4ebf366037bf19 Mon Sep 17 00:00:00 2001
From: Grzegorz Siwik <[email protected]>
Date: Fri, 12 Aug 2022 15:25:47 +0200
Subject: [PATCH] ice: Fix double VLAN error when entering promisc mode
Avoid enabling or disabling VLAN 0 when trying to set promiscuous VLAN mode if double VLAN mode is enabled. This fix is needed because the driver tries to add the VLAN 0 filter twice (once for inner and once for outer) when double VLAN mode is enabled. The filter program is rejected by the firmware when double VLAN is enabled, because the promiscuous filter only needs to be set once.
This issue was missed in the initial implementation of double VLAN mode.
drivers/net/ethernet/intel/ice/ice_switch.c +7 -0
@@ -4445,6 +4445,13 @@ ice_set_vlan_vsi_promisc(struct ice_hw *hw, u16 vsi_handle, u8 promisc_mask, goto free_fltr_list;list_for_each_entry (list_itr, &vsi_list_head, list_entry) { +/* Avoid enabling or disabling VLAN zero twice when in double +* VLAN mode +*/ +if (ice_is_dvm_ena (hw) && + list_itr->fltr_info.l_data.vlan.tpid ==0 ) +continue ; + vlan_id = list_itr->fltr_info.l_data.vlan.vlan_id;if (rm_vlan_promisc) status = ice_clear_vsi_promisc(hw, vsi_handle,