kernel_samsung_a53x/drivers/net/ethernet/intel
Dave Ertman 6bb154f4ac ice: fix VLAN replay after reset
[ Upstream commit 0eae2c136cb624e4050092feb59f18159b4f2512 ]

There is a bug currently when there are more than one VLAN defined
and any reset that affects the PF is initiated, after the reset rebuild
no traffic will pass on any VLAN but the last one created.

This is caused by the iteration though the VLANs during replay each
clearing the vsi_map bitmap of the VSI that is being replayed.  The
problem is that during rhe replay, the pointer to the vsi_map bitmap
is used by each successive vlan to determine if it should be replayed
on this VSI.

The logic was that the replay of the VLAN would replace the bit in the map
before the next VLAN would iterate through.  But, since the replay copies
the old bitmap pointer to filt_replay_rules and creates a new one for the
recreated VLANS, it does not do this, and leaves the old bitmap broken
to be used to replay the remaining VLANs.

Since the old bitmap will be cleaned up in post replay cleanup, there is
no need to alter it and break following VLAN replay, so don't clear the
bit.

Fixes: 334cb0626de1 ("ice: Implement VSI replay framework")
Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Signed-off-by: Dave Ertman <david.m.ertman@intel.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: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-23 23:21:50 +01:00
..
e1000 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
e1000e Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fm10k Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
i40e i40e: Report MFS in decimal base instead of hex 2024-11-19 11:32:38 +01:00
iavf iavf: Fix TC config comparison with existing adapter TC config 2024-11-19 11:32:38 +01:00
ice ice: fix VLAN replay after reset 2024-11-23 23:21:50 +01:00
igb igb: Fix not clearing TimeSync interrupts for 82580 2024-11-23 23:21:04 +01:00
igbvf Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
igc igc: Unlock on error in igc_io_resume() 2024-11-23 23:21:04 +01:00
ixgb Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ixgbe ixgbe: avoid sleeping allocation in ixgbe_ipsec_vf_add_sa() 2024-11-19 09:22:44 +01:00
ixgbevf Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
e100.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00