> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > Buvaneswaran, Sujai > Sent: Monday, January 13, 2025 9:17 AM > To: Marcin Szycik <[email protected]>; intel-wired- > [email protected] > Cc: [email protected]; Michal Swiatkowski > <[email protected]> > Subject: Re: [Intel-wired-lan] [PATCH iwl-net] ice: Fix switchdev slow-path > in LAG > > > -----Original Message----- > > From: Intel-wired-lan <[email protected]> On Behalf > > Of Marcin Szycik > > Sent: Friday, January 3, 2025 12:38 AM > > To: [email protected] > > Cc: [email protected]; Marcin Szycik > > <[email protected]>; Michal Swiatkowski > > <[email protected]> > > Subject: [Intel-wired-lan] [PATCH iwl-net] ice: Fix switchdev > > slow-path in LAG > > > > Ever since removing switchdev control VSI and using PF for port > > representor Tx/Rx, switchdev slow-path has been working improperly > > after failover in SR- IOV LAG. LAG assumes that the first uplink to be > > added to the aggregate will own VFs and have switchdev configured. > > After failing-over to the other uplink, representors are still > > configured to Tx through the uplink they are set up on, which fails because > > that > uplink is now down. > > > > On failover, update all PRs on primary uplink to use the currently > > active uplink for Tx. Call netif_keep_dst(), as the secondary uplink > > might not be in switchdev mode. Also make sure to call > > ice_eswitch_set_target_vsi() if uplink is in LAG. > > > > On the Rx path, representors are already working properly, because > > default Tx from VFs is set to PF owning the eswitch. After failover > > the same PF is receiving traffic from VFs, even though link is down. > > > > Fixes: defd52455aee ("ice: do Tx through PF netdev in slow-path") > > Reviewed-by: Michal Swiatkowski <[email protected]> > > Signed-off-by: Marcin Szycik <[email protected]> > > --- > > drivers/net/ethernet/intel/ice/ice_lag.c | 27 > > +++++++++++++++++++++++ drivers/net/ethernet/intel/ice/ice_txrx.c | 4 > > +++- > > 2 files changed, 30 insertions(+), 1 deletion(-) > >
Tested-by: Rafal Romanowski <[email protected]>
